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

Форум PHP

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

 

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

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

тема: Вывод списка
 
 автор: Лена   (02.12.2009 в 11:59)   письмо автору
 
 


<?php
include ("configs/dbopen.php");

$sql "SELECT m.menu_items_id mm, m.menu_items_name mn,
m1.menu_items_id mm1, m1.menu_items_name mn1,
m2.menu_items_id mm2, m2.menu_items_name mn2
FROM `menu_items` m
LEFT JOIN menu_items m1 ON m.menu_items_id = m1.menu_items_pid
LEFT JOIN menu_items m2 ON m1.menu_items_id = m2.menu_items_pid
WHERE m.menu_id =7
AND m.menu_items_pid =0
ORDER BY m.pos,m.menu_items_id"
;
$res mysql_query($sql);
if(!
$res) exit("Error in $sql: "mysql_error());

$menu_arr "";
$menu_arr .= "<div id='myslidemenu' class='jqueryslidemenu'><ul>";
for(
$res mysql_query($sql), $c1 null $row mysql_fetch_row($res); ){
    list(
$mm$mn$mm1,$mn1$mm2,$mn2) = $row;
//пункты меню
    
if($c1 !==$mm){
    
$c1 $mm;
     
$c2 null;
   
$menu_arr .= "<li><a href='?cat=" $mm "'>" htmlspecialchars($mn) . "</a>";
   }

   if(
$mm1 != null){
       
//подпункты, 2 уровень
     
$menu_arr .= "<ul>";
    if(
$c2 !== $mm1){
    
$c2 $mm1;
       
$menu_arr .= "<li><a href='?cat=" $mm1 "'>" htmlspecialchars($mn1) . "</a>";
       }
    
//подпункты, 3 уровень
    
$menu_arr .= "<ul>";
       if(
$mm2 !== null){
    
$menu_arr .= "<li><a href='?cat=" $mm2 "'>" htmlspecialchars($mn2) . "</a></li>";
    }
    
$menu_arr .= "</ul>";

    
//закрыли 2уровень
    
$menu_arr .= "</li></ul>";
    }
    
//закрыли 1-й уровень
    
$menu_arr .= "</li>";
}
$menu_arr .= "</ul></div>";

print 
$menu_arr;
?>


Пункты меню по уровням выводятся из таблицы - надо сделать горизонтальное выпадающее меню. Все это нужно оформить в виде трехуровневого списка.
При добавлении третьего уровня добавляются ненужные закрывающие теги. Как можно поставить условие: если есть третий уровень, то теги не добавляем?

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

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