За последние 24 часа нас посетили 18824 программиста и 1708 роботов. Сейчас ищут 860 программистов ...

Как отрисовывать меню по вертикали и горизонтали?

Тема в разделе "PHP для новичков", создана пользователем melihovgv, 8 авг 2012.

  1. melihovgv

    melihovgv Активный пользователь

    С нами с:
    2 мар 2011
    Сообщения:
    285
    Симпатии:
    0
    Адрес:
    Москва
    Имеется меню следующего вида
    function ShowTree($parent, $lvl) {

    global $link;


    $lvl++;


    $sql = "SELECT * FROM content WHERE parent = " . $parent . " ORDER BY id";

    $result = mysql_query($sql, $link);

    if (mysql_num_rows($result) > 0) {

    echo("<UL>\n");
    while ( $row = mysql_fetch_array($result) ) {

    $ID1 = $row["id"];

    $chpu = $row["chpu"];


    echo("<li>");



    echo "<a href=\"" . "index.php?id=" . $ID1 . "&chpu=".$chpu."\">" . $row["namemenu"] . "</a>" ;

    echo("</li>\n");

    ShowTree($ID1, $lvl);
    $lvl--;

    }
    echo("</UL>\n");
    }

    }


    Как отрисовывать меню по вертикали и горизонтали?В предложенном варианте оно отрисовывается по горизонтали.
     
  2. Your

    Your Старожил

    С нами с:
    2 июл 2011
    Сообщения:
    4.074
    Симпатии:
    7
  3. melihovgv

    melihovgv Активный пользователь

    С нами с:
    2 мар 2011
    Сообщения:
    285
    Симпатии:
    0
    Адрес:
    Москва
    И по Вашему там решены эти проблемы?
     
  4. YSandro

    YSandro Старожил

    С нами с:
    7 апр 2011
    Сообщения:
    2.523
    Симпатии:
    2
  5. melihovgv

    melihovgv Активный пользователь

    С нами с:
    2 мар 2011
    Сообщения:
    285
    Симпатии:
    0
    Адрес:
    Москва
    с помощью css отрисовал, а как делать, так чтобы отрисосывалась в меню горизонтальное до id 10,а в вертикальное от 11?
     
  6. YSandro

    YSandro Старожил

    С нами с:
    7 апр 2011
    Сообщения:
    2.523
    Симпатии:
    2
    В первом посте не было ничего про id 10 и 11. К тому же функция выводит неправильно отформатированный список. И вообще эта функция и этот подход никуда не годятся. На каждый уровень меню будет по запросу к базе данных, что не есть хорошо.
    Это продолжение темы viewtopic.php?f=13&t=40008&p=324728 ?
    Там я вам давал функцию, которая валидно выводит меню, и написал "разбирайтесь". Не разобрались. Нужно её и модифицировать, поставить ограничения.
    Ёлки, с 13 мая мучаетесь.
     
  7. melihovgv

    melihovgv Активный пользователь

    С нами с:
    2 мар 2011
    Сообщения:
    285
    Симпатии:
    0
    Адрес:
    Москва
    С той функцией на время завязал, потому что все уперается в чпу.
    Хтакцесс настроил.
    А само формирование чпу не разобрался.
    В этой функции разобрался, но при переходе по меню не происходит GET запроса и поэтому выводится контент только первого id

    Добавлено спустя 3 минуты 58 секунд:
    Также для этого меню сделал следующую функцию.
    function follow_cat ($cat)
    {
    $link = "";
    echo $link;
    $id = $cat;
    while ($id != 0){
    $res1 = mysql_query("SELECT parent, namemenu,id_id FROM content WHERE id=$id");
    $fetch = mysql_fetch_array($res1);
    $name = $fetch['namemenu'];
    if ($id == $cat){
    $link = "$name".$link;
    }
    else{
    $link = "<a href=\"/index.php?id=$id\">$name</a> / ".$link;
    }
    $id = $fetch['id_id'];
    //$id = $fetch['parent'];
    }
    return $link; }