Новости | FAQ | Авторы | Документация | В действии | Библиотека |
Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
Misha v.3 17.08.2004 19:37
@GetSectionsByParent[pid][tempsection] $result[^table::create{idpidurititleis_publishedis_admin}] ^if($hashTree.[$pid]){ $tempsection[$hashTree.[$pid]] ^tempsection.menu{ ^if($tempsection.pid==$pid){^result.append{$tempsection.id$tempsection.pid$tempsection.uri$tempsection.title$tempsection.is_published$tempsection.is_admin}} } }вы не задумывались о том, что у вас уже есть в $hashTree?
@GetSectionsByParent[pid] $result[$hashTree.[$pid]]ведь именно ради этого делается хеш таблиц-то...
@SectionsCount[pid][tempsection;count] # Вычисляем количество записей $result(0) $tempsection[^GetSectionsByParent[$pid]] ^result.inc($tempsection)ну вы хоть посмотрели на этот код? да, я ошибся при copy/paste ваших кусков, но копировать-то бездумно не надо. на фига тут $result(0) и ^result.inc(...)? на фига @...[...][...;count]?
Всего 1 запросэто ужасный запрос. он достает всё. а если у сайта 5000 страниц? опять-же, а почему не достать только документы которые is_published = 1? соотв. н нужны будуь ^if($root.is_published){...}