Форум программистов, компьютерный форум, киберфорум
Наши страницы

PHP для начинающих

Войти
Регистрация
Восстановить пароль
 
dogmar
0 / 0 / 0
Регистрация: 13.07.2011
Сообщений: 54
#1

усовершенствование скрипта - PHP

26.07.2011, 10:29. Просмотров 341. Ответов 2
Метки нет (Все метки)

Здравствуйте, Имею рабочий скрипт который выводит Меню Родителей и детей. соответственно 2 цикла
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<ul id="navmenu-v">
<?php
 
$tree_res = mysql_query("SELECT * FROM Subdivision WHERE Parent_Sub_ID = '0'"); //после этого не мешало бы проверку поставить вернул ли что-нибудь запрос
while($menu_tree = mysql_fetch_assoc($tree_res))
{
?>
                
                                
<li><a href="/"><?php echo $menu_tree['name'] ?></a>
 
<?php
//эта часть если ты не уверен что у тебя есть 2 уровень, ты проверяешь на наличие детей этого пункта меню
        $sub_tree_res = mysql_query("SELECT * FROM Subdivision WHERE Parent_Sub_ID = ' ".$menu_tree['id']." ' ");
        if (!empty($sub_tree_res))
        {
?>
 
                                
                <ul>                        
<?php
 
                while($sub_menu_tree = mysql_fetch_assoc($sub_tree_res))
                {
 
?>
                                                
                                                <li><a href="catalogview.php?id=<?php echo $sub_menu_tree['id'] ?>"><?php echo $sub_menu_tree['name'] ?></a></li>
<?php
 
                }
 
?></ul>
                                       
 
<?php
        }
?>
 
                    
<?php
}
 
?></ul>
Помогите добавить третий цикл, что бы выводить еще Детей детям Если они есть
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.07.2011, 10:29
Я подобрал для вас темы с готовыми решениями и ответами на вопрос усовершенствование скрипта (PHP):

Как назначить переменной php-скрипта значение переменной скрипта js? - PHP
Как назначить переменной php-скрипта значение переменной скрипта js? Javascript находится в другом файле..

Вызов php скрипта из другого скрипта - PHP
Есть такой код echo ('&lt;img src=&quot;d.php?q='.$f.'&amp;s='.$z0.'&quot; width=&quot;50%&quot;&gt;'); Т.е. передаем скрипту d.php переменные q со значением $f, s...

Запуск скрипта - PHP
Всем привет! Мне нужен скрипт теста, скачал, установить не получилось. Сделал все как в инструкции, проверяю на денвере, не работает,...

Защита скрипта! - PHP
Здравствуйте, интересует несколько вопросов. Как лучше сделать привязку скрипта? Без удал. доступа. Где можна, или у кого можна,...

Модернизация скрипта - PHP
Добрый день! Есть скрипт который выводит меню, а данные подтягивает из бд. Реализовано с помощью рекурсии и поэтому у меня проблема с тем...

Разъяснение скрипта - PHP
Всем привет! Прошу прощения, что к вам обращаюсь, но сроки очень поджимают. Есть готовый скрипт, который создает список производителей,...

2
__PION__
954 / 795 / 12
Регистрация: 21.07.2010
Сообщений: 3,521
26.07.2011, 15:43 #2
Цитата Сообщение от dogmar Посмотреть сообщение
Помогите добавить третий цикл, что бы выводить еще Детей детям Если они есть
а если понадобится 100 детей, 100 раз будешь писать циклы?
Здесь нужна рекурсия.
Вот пример такой ф-ии
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// по умолчанию уровень = 0
function ShowMenu($parent_id, $level = null) {
    
        // делаем из 0 первый уровень   
    $level++;
 
    $query = "SELECT * FROM Subdivision WHERE Parent_Sub_ID = $parent_id";
    $result = mysql_query($query);
        
    if (mysql_num_rows($result) > 0) {
        echo "<ul>";
        while ($menu_tree = mysql_fetch_array($result)) {
            echo "<li>";
            echo "<a href=/?id=" . $menu_tree["id"] . ">" .
                $menu_tree['name'] . "</a>";
                       
                        // Здесь эта же ф-я вызывается еще раз (сколько уровней, столько раз и будет вызываться)
            ShowMenu($id, $level);
                        // здесь пролезаем на 1 уровень внутрь
            $level--;
        }
        echo "</ul>";
    }
 
}
 
// а так вызываем ф-ю
ShowMenu(0);
Это на выходе (выводе из БД).
А при сохранении в БД у тя в таблице БД должно быть еще поле, в которое заносится id родительского элемента.

Здесь $menu_tree["id"] - id - это поле с идентификатором в БД, у тя олно может называться по другому
а здесь /?id - параметр массива $_GET. Его можешь убрать, если те не нужны ссылки
0
dogmar
0 / 0 / 0
Регистрация: 13.07.2011
Сообщений: 54
26.07.2011, 15:55  [ТС] #3
детей у меня больше 2ух быть не могут, и к трём циклам мне нужно применить разные стили,в рекурсии кажется нельзя такое.я Буду благодарен если к моему скрипту добавите третий цикл
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.07.2011, 15:55
Привет! Вот еще темы с ответами:

Ошибка скрипта - PHP
Всем привет При добавлении новости на сайт, когда я нажимаю на кнопку - Отправить новость всем подписавшимся. Вылезает эта ошибка -...

Выполнение скрипта - PHP
Добрый вечер! Ребят может кто подсказать в какую сторону смотреть или рассказать как делается следующая штука. Значит был я сегодня у...

работа скрипта - PHP
Всем привет! В php только делаю первые шаги. И для своего сайта решил воспользоваться некоторыми готовыми скриптами, просто переделать...

Обфускация скрипта - PHP
Привет всем ,столкнулся с такой проблемой . Человек писал скрипт ,а потом когда поругались ,решил его обфусцировать ,мне нужно срочно...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru