2002-04-12 19:08:56 UTC
В одном из прошлых примеров обещалось рассказать о формировании в базе данных списка всех разделов (это нужно для формирования навигации «хлебные крошки»). Обещания надо выполнять, поэтому ниже приведу текст макроса, которым я это делаю.
@sections.list[] ^eq[^tolower[^name[^env[PATH_INFO]]];index; ^var[length;^length[^env[PATH_INFO]]] ^var[length;-;10] ^var[dir;^left[^env[PATH_INFO];^var[length]]] ^context[sections; ^sql[ select dir, title from sections where dir = '^var[dir]' ] ^empty[ ^sql[ insert into sections (dir, title) values ('^var[dir]', '^var[page.title]') ] ;] ] ;]
Пояснения:
create table sections ( dir varchar(200) not null, title char(50) not null, primary key (dir) )