Деревья на нативном шаблонизаторе.

дааа. богатая тема.

-~{}~ 09.03.09 19:12:

бессмертное летмишоую
 
*****, а лэтмишоу причем тут? у меня ж таблица есть=)
Или ты про то что индексов нету и т.д.? так я таблицу простую сделал, только для того чтоб показать как дерево выводится и всё)
А то тут полуПХП, полуХТМЛ пишут... У меня ведь всё проще, любой верстальщик поймет

-~{}~ 09.03.09 19:24:

А и кстати уровней можете больше добавлять =)) мой шаблон на 13 уровней сделан кажется... или больше, не помню уже.

почти написал уже админку, где в веб-интерфейсе дерево менять можно. удалять категории, добавлять, передвигать и т.д. =))
 
нет, все-таки у тебя блочный шаблон или нечто подобное. ASP.NET напоминает, насколько я помню - custom-тэг tree, в котором указан подшаблон branch, а в нем подшаблон leaf. Но native php тут не обойдешься
 
x-yuri, как понять блочный? Всмысле что уровни друг от друга отгораживаются сепаратором, ну это же нормально.. По-другому и не сделать. Ну хз, я считаю этот вариант лучшим, а использовать или не использовать - ваше право, но понять как работает точно нужно! =)
 
Safary
Ты что, читать не умеешь?!
Я же писал, что нужно на НАТИВНОМ шаблонизаторе.

-~{}~ 09.03.09 21:56:

Не засирай тему!
 
это не вариант. это анекдот.
написать 13 одинаковых кусков кода и разделить их сепаратором - надо быть очень, очень талантливым программистом
 
*****
Не понимаю я таких людей как Safary.
Если Safary не умеет пользоваться CSS и не знает что такое блочный шаблонизатор и что такое нативный, то это конечно его личные проблемы. Но зачем об этом кричать и постить говнокод в эту тему?!
 
*****, ухахахах!!! Вот щас до меня дошло наконец-то!!!
Но они не одинаковые и дело в том, что можно разные делать...
Там spacer.gif разной длины, разные символы для слов, разные слова, разные фоны для ячеек.
Конечно можно и на автомате сделать, но зачем... не так много вроде и хтмл, за то менять как угодно можно, ну лан... не буду тему засирать действительно.
Кстати, что такой НАТИВНЫЙ шаблон? если честно впервые слышу такое название, а так может и смогу помочь автору...

-~{}~ 09.03.09 22:19:

Lightning, почему говнокод? отличный код!
почему CSS не умею пользоваться, типа ссылкой надо на css файл? я так для оптимизации сделал, в cms у мя ссылкой разумеется.
А вот про шаблонизаторы серьёзно не знаю, не сталкивался ещё.
Блин, меня ваша реакция насмешила так тут на всё это хахахах!
 
нет, все-таки у тебя блочный шаблон или нечто подобное. ASP.NET напоминает, насколько я помню - custom-тэг tree, в котором указан подшаблон branch, а в нем подшаблон leaf. Но native php тут не обойдешься
У меня не блочный шаблон! И нет подшаблонов!
А почему native php не обойдусь?! Если не придумаю лучшего решения на нативе чем текущее, то придется оставить как есть.
 
если ветку не нужно закрывать, то шаблон сразу становится проще
я еще в той теме хотел это написать, но забыл, похоже

-~{}~ 09.03.09 22:54:

в этом смысле шаблон нашего незадачливого друга представляет собой пример, к которому можно присмотреться.

-~{}~ 09.03.09 23:07:

а если надо закрывать, то я бы, все-таки, ввел функцию close_list($tag), и вызывал её в конце цикла.
 
если ветку не нужно закрывать, то шаблон сразу становится проще
Мне нужно закрывать ветку.
а если надо закрывать, то я бы, все-таки, ввел функцию close_list($tag), и вызывал её в конце цикла.
И как бы это выглядело в шаблоне?
 
как-то так
PHP:
<? foreach ($TREE as $row): ?>
<? if($row['li']=="open"): ?><ul><?endif?>
<li><a href="?id=<?=$row['id']?>"><?=$row['title']?></a></li>
<? close_list("</ul>")?>
<? endforeach ?>
 
*****
Сам же говорил, что не любишь когда HTML в кавычках )

-~{}~ 09.03.09 23:15:

<? while(close_list()) {?>
</ul>
<? } ?>
 
*****, что значит мой код примером будет? Ураа!! Я всегда всем говорил что я супер-программист!
 
при этом текущая строка должна знать про следующую, но при переводе дерева в список это будет сделать несложно
 
*****
Попробуй показать шаблон для моего случая, когда нужно различать ветки и листья. Может получится проще чем мой.
 
Сверху