Запрос MySQL:
SELECT title,alias,parent FROM '._prefix.'categories
WHERE (language = \''._language.'\' || language = \'all\')
&& status = \'published\'
ORDER BY rank ASC
Результат (из phpMyAdmin):
title | alias | parent
Home | home | 0
Todo | todo | 0
Multiuser| todo_mu | 21
Modulsys | todo_mod | 21
PHP:
while($c = mysql_fetch_array($category_result)) {
if($c['parent'] == 0) {
$output .= '<li><a href="'._rewrite_string.$c['alias'].'" title="'.$c['title'].'">'.$c['title'].'</a>';
$output .= '<ul>';
mysql_data_seek($category_result,0);
while($d = mysql_fetch_array($category_result)) {
$output .= '<li class="space_left"><a href="'._rewrite_string.$c['alias'].'/'.$d['alias'].'" title="'.$d['title'].'">'.$d['title'].'</a>';
$output .= '</li>';
}
$output .= '</ul>';
$output .= '</li>';
}
}
Это должно создать такой список категорий
кошка 1
- подкатегория 1
- подкатегория 2
кошка 2
кошка 3
но он генерирует что-то вроде этого
кошка 1
- кошка 1
- кошка 2
- подкатегория 1
- подкатегория 2
использование mysql_fetch_array в другом (вложенном) без использования mysql_data_seek вызывает прерывание после вызова вложенного mysql_fetch_array. он выводит только cat1 и ничего больше.
подскажите решение, спасибо
mysql_data_seekничего не делает, насколько я могу судить. - person Anthony   schedule 17.02.2010