Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [PHP] Получение и вывод подменю сайта / 4 сообщений из 4, страница 1 из 1
01.02.2014, 04:17
    #38545795
Dozent
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Получение и вывод подменю сайта
Добрый день, прошу подскажите как правильно получить и вывести значения подменю.

Вернее меню вывести у меня получилось (основные категории) а вот дочернии не могу, прошу сильно не ругать, только начинаю

Код: 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.
    function db_result_to_array($result)
    {
      /*  $res_array = array();
        $res_array_i= array();
        
        $count = 0;
        
        while($row = mysql_fetch_array($result))
        {
           $res_array[$count]= $row;
           $count_i=0;
           while($row_i = mysql_fetch_array(mysql_query('SELECT * FROM pages WHERE parent_id='.$res_array[$count]['id'])))
           {
                $res_array_i[$count_i]= $row_i;
                $count_i++;
           }
           $count++; 
        }
        return $result_array= array($res_array_i,$res_array_i);*/
        
        $res_array = array();
        $count=0;
        while($row = mysql_fetch_array($result))
        {
            $res_array[$count] = $row;
            $count++;
        }  
        
        return $res_array; 
    }
    
    
    
    function get_menu()
    {
        db_connect();
        $query = "SELECT * FROM pages WHERE parent_id=0 and id>1";
        
        $result = mysql_query($query);
        
        $result = db_result_to_array($result);
        
        return $result;
    }



То что закоментено, это моя попытка получить массив с элементами подменю, но оно вешает сайт, как правильно вывести тоже не пойму

на данный момент выводт выглядит так

Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
            <?$menu = get_menu();
            foreach($menu as $item): ?>	
			<li><a href="index.php?view=<?=$item['title_url']?>" ><?=$item['title']?></a>
                <ul>
					<li><a href="">Индустриальные</a></li>
					<li><a href="">Автошины</a></li>
					<li><a href="">Для грузовых авто</a></li>
					<li><a href="">Мотошины</a></li>
				</ul>
			</li>
            <?endforeach ?>
...
Рейтинг: 0 / 0
01.02.2014, 11:57
    #38545854
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Получение и вывод подменю сайта
С использованием запроса к БД внутри цикла надо бы поосторожнее. Наверняка можно получить из базы все необходимые данные одним запросом, чтобы собрать из них дерево.
...
Рейтинг: 0 / 0
01.02.2014, 14:22
    #38545905
Dozent
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Получение и вывод подменю сайта
разобрался...

Код: 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.
    function db_result_to_array($result)
    {
        
        $res_array = array();
        $count=0;
        while($row = mysql_fetch_array($result))
        {
            $res_array[$count] = $row;
            $count++;
        }  
        
        return $res_array; 
    }
    
    
    
    function get_menu()
    {
        db_connect();
        $query = "SELECT * FROM pages WHERE parent_id=0 and id>1";
        
        $result = mysql_query($query);
        
        $result = db_result_to_array($result);
        
        return $result;
    }


    function get_submenu($id)
    {
        db_connect();
        $query = 'SELECT * FROM pages WHERE parent_id='.$id;
        
        $result = mysql_query($query);
        
        $result = db_result_to_array($result);
        
        return $result;
    }



вывод

Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
        	<li><a href="index.php?view=index" style="padding: 5px 15px;"><img src="images/menu/home.png" alt="Главная" width="22" /></a></li>
            <?$menu = get_menu();
            foreach($menu as $item): ?>	
			<li><a href="index.php?view=<?=$item['title_url']?>" ><?=$item['title']?></a>
                <ul>
                     <?$submenu = get_submenu($item['id']);
                        foreach($submenu as $sub_item): ?>	
					<li><a href="index.php?view=<?=$sub_item['title_url']?>"><?=$sub_item['title']?></a></li>
                     <?endforeach ?>
				</ul>
			</li>
            <?endforeach ?>
...
Рейтинг: 0 / 0
05.02.2014, 00:28
    #38549520
Dozent
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Получение и вывод подменю сайта
я поспешил сказав, разобрался...

У меня теперь такая проблема:

Мне нужно чтобы адресная строка выглядела так
http://localhost/сайт/index.php?page=tires&?view=tire_auto где page=tires это название главного меню

сейчас же выглядит так
http://localhost/сайт/index.php?view=tire_auto каждому пункту меню главному или его вложениям соответсвует одна переменая

Прошу подскажите как нужно правильно записать вывод
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [PHP] Получение и вывод подменю сайта / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]