что я делаю не так?
Роман 25.11.2003 21:30
что есть
sections.cfg
section_id name uri
1 Главная /
2 Новости /news/
3 О компании /okom/
auto.p
@main[]
^header[]
^body[]
^footer[]
@navigation[]
$sections[^table::load[/sections.cfg]]
<table width="100%" border="0" bgcolor="#000000" cellspacing="0">
<tr bgcolor="#FFFFFF">
^sections.menu{
^navigation_cell[]
}
</tr>
</table>
<br>
@navigation_cell[]
$cell_width[^eval(100\$sections)%]
^if($sections.uri eq $request:uri){
<td width="$cell_width" align="middle" bgcolor="#A2D0F2">
<nobr>$sections.name</nobr>
</td>
}{
<td width="$cell_width" align="middle">
<a href="$sections.uri"><nobr>$sections.name</nobr></a>
</td>
}
@footer[]
<table width="100%" border="0" bgcolor="#000000" cellspacing="0">
<tr>
<td></td>
</tr>
</table>
$now[^date::now[]]
<font size="-3">
<center>Powered by Parser3<br>1997-$now.year</center>
</font>
</body>
</html>
@header[]
<html>
<head>
<title>Тестовый сайт Parser3</title>
</head>
<body bgcolor="#FAEBD7">
<table width="100%" border="0" bgcolor="#000000" cellspacing="1">
<tr bgcolor="#FFFFFF" height="60">
<td align="middle">
<font size="+2"> <b>^greeting[]</b></font>
</td>
</tr>
</table>
<br>
@body[]
^navigation[]
<table width="100%" height="65%" border="1" bgcolor="#000000" cellspacing="1">
<tr bgcolor="#ffffff" height="100%">
<td width="30%" valign="top" bgcolor="#EFEFEF">
<b>^body_additional[]</b>
</td>
<td width="70%" valign="top">
^body_main[]
</td>
</tr>
</table>
<br>
index.htm
@greeting[]
Добро пожаловать!
@body_additional[]
Главная страница сайта
@body_main[]
Основное содержание
Подразделы:
/ocomp
/news
/classes (здесь находятся классы)
Задача: в корневом _root.cfg прописывать разделы всего сайта
А в каждом разделе в файле - _secton.cfg прописывать подразделы сайта и просто страницы
Чтобы класс tnavigatoin.p
Сам формировал вверху основное меню разделов всего сайта а при заходе на какой-либо раздел в левой колонке этот класс создавал меню текущего раздела
согласно написанному в
http://www.parser.ru/forum/?id=6732 кидаю в /ocom файл _secton.cfg:
uri title
biz/ Бизнес
prod/ Продукция
а в /news файл _secton.cfg:
uri title
comp/ Компания
me/ О себе
в корневом делаю файл _root.cfg:
uri title status image aimage
/ Главная
/news/ Новости
/ocom/ Компания
/admin/ Администрирование сайта admin
и в auto.p
в @body[]
прописываю:
$nav[^TNavigation::Init[]]
^nav.ShowSecondNav[]
результат:
Unhandled Exception (Debug)
class is undefined
TNavigation
t:/home/nav/www/auto.p(61)
exception.type=parser.runtime
body t:/home/nav/www/auto.p(3)
я так понимаю что класс не определен.
Хорошо, моё следующее действие:
определяю класс:
В начале корневого auto.p сразу после:
@main[]
^header[]
^body[]
^footer[]
прописываю:
@USE
/classes/tnavigation.p
Результат:
Unhandled Exception (Debug)
t:/home/nav/www/auto.p(8:1): 'USE ' invalid special name. valid names are 'CLASS', 'USE' and 'BASE'
exception.type=parser.compile
такое ощущение что не понравился пробел после USE - 'USE '
убираю пробел
Результат:
Открывается начальная страница без ошибок 
И где я вставлял
$nav[^TNavigation::Init[]]
^nav.ShowSecondNav[]
там идет путь от начальной до файла
ссылка > ссылка>…
поскольку это начальная страница то стоит ссылка nav ( почему то nav а не начальная)
При переходе по ссылке «Новости» в главном меню попадаю на сайт новостей
И стоит адрес:
nav> новости
но при переходе по ссылке «Компания»
после nav> слова «компания» нет
и где меню подраздела????!!!????
Подскажите где я не прав
- что я делаю не так?, Роман 25.11.2003 21:30