2014-11-12 6 views
1

Я создал этот код для раскрывающегося меню навигации. У меня есть две таблицы в моей базе данных, одна для parentitems, а другая для дочерних элементов. Родители выходят правильно, но детей не будет.PHP/SQL не извлекает всех дочерних элементов из родителя

Проблема в том, что я получаю только одного родителя и одного ребенка за раз, или я ничего не получаю.

Заранее благодарен!

Мой код:

<?php 
    $con=mysql_connect("localhost","root",""); 
    $db=mysql_select_db('navigation',$con); 
    $query="select * from nav"; 

    $run=mysql_query($query); 
    while($row=mysql_fetch_array($run)){ 
     $m_id=$row['m_id']; 
     $m_title=$row['m_title']; 
     $child_query="select * from nav_child where parent_id='$m_id'"; 
     $run_child=mysql_query($child_query); 

     while($row_child=mysql_fetch_array($run_child)) { 
      $child_id=$row_child['nav_id']; 
      $child_title=$row_child['child_title']; 
      echo"<ul> 
        <li><a href='menu.php'>$m_title</a> 
        <ul> 
        <li><a href='menu.php'>$child_title</a></li> 
        </ul> 
        </li> 
       </ul>"; 
     } 
    } 
?> 

ответ

1

Вы должны разделить ваш HTML

while(mainquery) { 
    echo '<ul>'   <-----note the location 
    while (subquery) { 
     echo '<li>subquery 1 stuff</li>' 
    } 
    echo '</ul>'   <-----note the location 
} 

Вы выводя его полностью в вашем подзапрос секции, так что каждый ребенок получает ряд установить свой собственный полный <ul><li>...</li></ul> тег.

+0

# # # # # # # # # # # # # # # # Вы можете ответить на эту проблему. – user3774870

+0

Спасибо, что Марк сделал с вашей помощью ... :) – user3774870

Смежные вопросы