Регистрация
Вход через соцсети
Восстановление пароля

Вывод в зависимости от наличия подразделов

Новый топик
26.04.2006, 19:15
Ответить | Цитировать
ks
Джетон

Зарегистрирован:
2005-01-21
Сообщений: 10

Есть задача, при выводе меню, выводить подменю в зависимости от того существует ли у данного раздела подразделы или нет. Т.е. в Шаблонах вывода навигации хочу написать примерно следующее:
Код:

$browse_sub[3][prefix] = "........";
$browse_sub[3][suffix] = "........";
$browse_sub[3][unactive] = "........";
$browse_sub[3][active] = "........";
$browse_sub[3][active_link] = "".opt(условие существования подразделов у данного раздела,".s_browse_sub($data[$i][Subdivision_ID],$browse_sub[4]).")."";
$browse_sub[3][divider] = "........";

не могу сформулировать такое условие. Так хочу сделать т.к. $browse_sub[4][prefix] и $browse_sub[4][suffix] - непустые и их надо выводить только если подменю будет.
27.04.2006, 10:28
Ответить | Цитировать
Гость

Зарегистрирован:
1970-01-01
Сообщений: 665

if (!$data_count) return;
говорит о том, что ничего выводится не будет, если выводить нечего, в том числе префикс и суффикс. так зачем тогда проверка?
11.11.2006, 02:55
Ответить | Цитировать
Гость
Гость

Прочитал, но не совсем понял как именно это зделать!
можно пожалуйста поподробнее описать (обьяснить) что и где зделать что ьы выводилось саб меню раздела в котором находишся!!!
13.11.2006, 01:14
Ответить | Цитировать
Гость
Гость

Ктотору писал(а):

можно пожалуйста поподробнее описать (обьяснить) что и где зделать что ьы выводилось саб меню раздела в котором находишся!!!


На самом деле, вопрос актуальный и для меня, тк есть сделанные вручную сайты, в которых навигация построена так, как описано в этой теме - а как сделать в NetCat пока не разобрался.

Помогите, пожалуйста, подробнее, для тех, кто в танке.
Заранее благодарю.
14.11.2006, 15:57
Ответить | Цитировать
n

Зарегистрирован:
2006-08-04
Сообщений: 170

Код:

$browse_sub[prefix] = ""; global $browse_sub; $result .= "";
$browse_sub[unactive] = "%NAME".s_browse_sub($data[$i][Subdivision_ID], $browse_sub)."";


Проверка на существование подразделов не нужна: если их нет, то ничего выводиться не будет.
16.11.2006, 04:03
Ответить | Цитировать
Гость
Гость

попробовал, и у меня стала цмэска материться, а именно

Parse error: parse error, unexpected ';' in f:\localtechelectronetcatrequires_browse.inc.php(307) : eval()'d code on line 1
16.11.2006, 04:16
Ответить | Цитировать
Гость
Гость

а мне сюда

$browse_sub[1][prefix] = "";global $browse_subdiv; $result.="<table border=0><font size=-1>";
$browse_sub[1][suffix] = "</font></table>";
$browse_sub[1][active] = "<tr><td><b><a href=%URL>%NAME</a></b></td></tr>";
$browse_sub[1][active_link] = "<tr><td><b>%NAME</b></td></tr>";
$browse_sub[1][unactive] = "<tr><td><a href=%URL>%NAME</a></td></tr>";
$browse_sub[1][divider] = "";

ничего не надо добавлять, которое указывало бы на

$browse_sub[prefix] = ""; global $browse_sub; $result .= "";
$browse_sub[unactive] = "%NAME".s_browse_sub($data[$i][Subdivision_ID], $browse_sub)."";

или я чавото не совсем понял?!

P.s-с ошибкой разобрался:-))
16.11.2006, 13:12
Ответить | Цитировать
n

Зарегистрирован:
2006-08-04
Сообщений: 170

Не совсем понял о чем вы, но похоже нужно добавить что-то вроде:

Код:

".s_browse_sub($data[$i][Subdivision_ID], $browse_sub)."


в конец [active], [unactive] и т.д.
15.01.2007, 23:15
Ответить | Цитировать
Bash
Хомский Виталий Григорьевич

Зарегистрирован:
2006-12-06
Сообщений: 25

У меня аналогичная проблема!

Проще говоря, необходимо выводить напротив каждого раздела, ИМЕЮЩЕГО ПОДРАЗДЕЛЫ, стрелочку. А напротив тех, которые НЕ ИМЕЮТ ПОДРАЗДЕЛЫ - черточку.

Как осуществить проверку на существование подразделов - непонятно.
Пробовал использовать для этого opt и ListQuery. Но такой способ не работает...

$browse_sub[0][unactive] = "<a href='%URL'>%NAME</a>".opt_case(listQuery("SELECT Parent_Sub_ID FROM Subdivision WHERE Parent_Sub_ID = '%SUB'","$data[Parent_Sub_ID]"),"<img src='STRELO4KA'>","<img src='4ERTO4KA'>");

... потому что переменная %SUB на каждой итерации выдает одно и то-же значение (номер раздела, в котором мы уже находимся). Тоесть, listQuery в шаблоне вывода навигации выполняется уже после того, как все меню будет сформировано. Или оно вобще несколько раз вызывается... Короче я окончательно запутался.

Это ведь так просто - проверить есть ли у раздела подразделы... Помогите люди добрые, сроки горят!!!
17.01.2007, 19:51
Ответить | Цитировать
Кирилл Хряпин

Зарегистрирован:
2006-06-15
Сообщений: 207

Код:
$browse_sub[0][unactive] = "<a href='%URL'>%NAME</a>
" . opt_case(listQuery("SELECT COUNT(*) as count
FROM Subdivision
WHERE Parent_Sub_ID={$data[$i][Subdivision_ID]}", '$data[count]'),
'<img src=STRELO4KA>',
'<img src=4ERTO4KA>') . "
";
198 196 2007-01-17 19:51:43 8528
Описание проекта