Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: создать цепочку данных
 
 автор: Slo_Nik   (26.12.2011 в 02:42)   письмо автору
 
 

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

1.1
1.2
  1.2.1
  1.2.2
    1.2.2.1
1.3

из базы уже получены порядковые номера и id всех статей.
вывод в браузер такой

<?php 
   
function listTree($r$c){ 
    
$html "";
    foreach(
$r as $v){
         
/* заголовок статьи */
      
$title = ($v->block == 'show')
               ? 
"<a href='#'>".$v->title_art."</a>"
               
"<a class='block' href='#'>".$v->title_art."</a>";
      
$chapter $v->order_chapter;// порядковый номер главы
      
$root_art $v->order_article// порядковый номер статьи
     /* собираем список всех статей */
      
$html .= "<ul class='ul-article-list'><li>".$chapter.".".$root_art.".".$title;
      if(isset(
$c[$v->id_article])){ // если есть статья-потомок, то вызываем функцию снова
       
$html .= listTree($c[$v->id_article], $c);
      }
      
$html .= "</li></ul>";
    }
    return 
$html;
  }
// $root - массив с родительскими статьями, $child со статьями-потомками
echo listTree($root$child);
?>

если выводить статьи первого уровня, то всё нормально, но при выводе статьи-потомка теряется порядковый номер родителя.
получается так

1.1
1.2
  1.1
  1.2
1.3
/* а должно быть так */
1.1
1.2
  1.2.1
  1.2.2
   1.2.3
1.3

Подскажите, как решить данную задачу? Может цепочку из номеров собирать перед записью в базу и выводить уже готовую?

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования