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

Форум MySQL

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

 

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

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

тема: Сортировка страниц
 
 автор: CrazyAngel   (05.05.2006 в 21:19)   письмо автору
 
 

Меня заклинило, не могу придумать алгоритм =(

Вобшем мне нужно отсортировать страници,

тоесть страници с подстраницами, ну как папки в подпапках в них файлы =)...

есть таблица вида

| название страницы | ее id | id категории |
---------------------------------------------------------------
| Титл                             |    1   |    0                    |
---------------------------------------------------------------



надо отсортировать

так


 Титл -
         |-- страница 1
         |-- страница 2
            |-- страница 1
            |-- страница 2



Помогите

   
 
 автор: Ziq   (05.05.2006 в 21:30)   письмо автору
 
   для: CrazyAngel   (05.05.2006 в 21:19)
 

что-то не понял откуда беруться
         |-- страница 1 
         |-- страница 2 
            |-- страница 1 
            |-- страница 2

   
 
 автор: CrazyAngel   (05.05.2006 в 21:37)   письмо автору
 
   для: Ziq   (05.05.2006 в 21:30)
 

Ну это типа иерархия что-ли =)

   
 
 автор: Ziq   (05.05.2006 в 22:06)   письмо автору
 
   для: CrazyAngel   (05.05.2006 в 21:37)
 

Нет, то что это иерархия это понятно, откуда берутся названия.

Ну т.е. почему в странице 2 есть подстраницы, а в странице 1 - нет. Откуда они беруться?

   
 
 автор: CrazyAngel   (05.05.2006 в 22:09)   письмо автору
 
   для: Ziq   (05.05.2006 в 22:06)
 

Если у страници есть ID категнории то она подстраница страници с такимже id извините за тафтологию =)

   
 
 автор: Ziq   (05.05.2006 в 22:21)   письмо автору
 
   для: CrazyAngel   (05.05.2006 в 22:09)
 


<?
function iera($id_parent,$level=-1)
{
  
// Устанавливаем уровень
  
$level++;

  
$query  "select * from table
             where id_parent = 
$id_parent";

  
$myq = @mysql_query($query);
  if(!
$myq) return false;

  
// Если найдена хоть одна запись - выводим данные
  
if(mysql_num_rows($myq)>0)
  {
    while(
$fet mysql_fetch_array($myq))
    {
       
$id $fet['id'];
      
$title $fet['title'];

      echo 
str_repeat("nbsp;",$level)."$title\r\n";

      
// Осуществляем рекурсивный вызов для вывода
      // подчинённых записей
      
iera($id$level);  //  Опускаемся на уровень ниже
    
}
  }
}

iera(0);
?>


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

P.S. Спасибо cheops'у, это он мне подсказал когда-то алгоритм

   
Rambler's Top100
вверх

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