2012-04-19 107 views
0

我有這個問題,我的任務系統,回聲不顯示第一行所做

每當一個新成員,使他的第一個任務,它不會顯示出來。只有在第一個之後做出的那些。

<?php 

      $sql = mysql_query("SELECT * FROM todo WHERE member_id = '".$_SESSION['member_id']."' ORDER by id ASC"); 
      if (!$sql) { 
       die ('invalid query: ' . mysql_error()); 
      } 

       $rows = mysql_fetch_assoc($sql); 

      while($rows = mysql_fetch_array($sql)) {  

?> 

之後,我只是迴應所有的內容(任務)。在彼此之下的每一行。但是,第一項任務並沒有顯示出來。它仍然隱藏。

有誰知道如何解決這一問題?

+0

我無法想象你的意思。請張貼一些源代碼並發表評論,所以我們可以理解 – Stefan 2012-04-19 10:17:32

回答

2
$rows = mysql_fetch_assoc($sql); 

這實在是太多了。刪除它。它獲取第一行,所以while循環無法獲得第一行。

此外,我不會在while中使用mysql_fetch_array,請使用mysql_fetch_assoc來使用關聯數組。

+0

謝謝,這使它已經工作。 – Mennauu 2012-04-19 10:20:33

1

調用$ rows = mysql_fetch_assoc($ sql);正在讀取第一行,您不需要該行。發生的事情是該行讀取第一行,並更新$ sql(這是resultset資源)指向第二行,然後當您調用mysql_fetch_array($ sql)時,它從第二行開始。

+0

感謝您的回答,我現在明白了 – Mennauu 2012-04-19 10:22:04