2013-10-21 144 views
0

我已經看過幾個這樣的話題,所以我想先說對不起,但是這些話題給出的解決方案都沒有解決我的問題。MySQL/PHP只返回一個結果

我試圖讓使用PHP和MySQL動態導航菜單,我已經在數據庫中的虛擬文本,但由於某種原因,它只是想表明一個結果,對多個輸入..

這裏是我的代碼:

<?php 
require_once("../includes/connect.php"); 
include("../includes/header.php"); 
include("../includes/functions.php"); 
?> 
    <div id="content"> 
     <table id="table"> 
      <tr> 
       <td id="nav"> 
        <ul class="info"> 
         <?php 
          $result = mysql_query("SELECT * FROM information LIMIT 10", $connection); 

          while ($row = mysql_fetch_assoc($result)){ 
           echo "<li>{$row["menu"]}</li>"; 
          $result = mysql_query("SELECT * FROM pages WHERE information_id ={$row["id"]} LIMIT 10", $connection); 
           echo "<ul class=\"pages\">"; 
          while ($row = mysql_fetch_assoc($result)){ 
           echo "<li>{$row["menu"]}</li>"; 
          } 
           echo "</ul>"; 
          } 
         ?> 
        </ul> 
       </td> 
       <td id="main"> 
        <h2>Main Content</h2> 
       </td> 
      </tr> 
     </table> 
    </div> 
    <?php 
    include("../includes/footer.php"); 
    ?> 

</body> 
</html> 

不恨,因爲在這裏笑的表,它不是供公衆使用,我將其轉換爲網格時,我得到這一切成立和運作。我不是'親'PHP程序員,所以很好!

+2

。 – Maximus2012

+0

噢,我,我很愚蠢。我解決了這個問題,我對這兩個查詢都使用了變量$ result。我將第二個$結果更改爲$ res,現在工作正常......對不起!謝謝! – PrivateMufasa

回答

1

我想這個問題是在這裏..

你正在推動DATAS到相同的變量兩次....

使第一查詢並推到$結果。再次進行另一個查詢並將數據推送到相同的var $結果。

嘗試推到單獨的可變

$result1 = mysql_query("SELECT * FROM pages WHERE information_id ={$row['id']} LIMIT 10", $connection); 
          echo "<ul class=\"pages\">"; 
         while ($row1 = mysql_fetch_assoc($result)){ 
          echo "<li>{$row1["menu"]}</li>"; 
         } 
你可能想以不同的while循環迭代命名獲取/結果/行變量
+0

哈哈是的,我剛剛看到了!謝謝!爲什麼它看起來很奇怪? – PrivateMufasa

+0

奇怪,因爲在我想你可以使用連接而不是兩個循環..反正,因爲我不知道你的表結構是如何,所以我假設你正在做的權利...刪除了怪異的部分.. :)反正很高興它幫助..快樂的編碼... CHEERS! :) – bipen

+0

哈哈哦,好吧,大聲笑。好吧,就像我說的,即時通訊不是專業人士,我正在努力改進:) - 我確定我會最終將它重新編碼到你剛纔陳述的內容當我提高我的技能:D – PrivateMufasa