[請益] while迴圈一直少讀一筆

看板PHP作者 (玉米怪)時間15年前 (2009/06/24 16:29), 編輯推噓7(703)
留言10則, 6人參與, 最新討論串1/1
用while迴圈讀資料庫裡的資料 卻一直少一筆 應該注意哪裡寫錯了呢?? ---以下是程式碼--- if ($num > 0) { echo "$num<br>"; while($row = mysql_fetch_array($result)) { echo "{$row['order_time']}<br>"; } } 後來如推文所說加了MYSQL_DATA_SEEK(移動內部指標) 就出現了最後一筆了!!@@ 直接在上面增加 if (!mysql_data_seek ($result, $i)) { printf ("Cannot seek to row %d\n", $i); continue; } 不過不是很懂為什麼加了這一串就讓最後一筆跑出來了呢? $i我也沒宣告就可以用了 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.166.66.30

06/24 16:31, , 1F
while 的結束條件仔細檢查,少讀一筆是很常見的錯誤
06/24 16:31, 1F
※ 編輯: ryu12393 來自: 118.166.66.30 (06/24 17:12)

06/24 17:49, , 2F
是少第一筆還是最後一筆?
06/24 17:49, 2F

06/24 17:57, , 3F
mysql_data_seek 重置一下指標
06/24 17:57, 3F

06/24 18:30, , 4F
能否秀出sql看一下?該不會是 limit 1,n ?
06/24 18:30, 4F

06/24 18:31, , 5F
不對, 是 limit 0,$n-1 ?
06/24 18:31, 5F

06/24 19:20, , 6F
少最後一筆
06/24 19:20, 6F
※ 編輯: ryu12393 來自: 118.166.75.222 (06/24 19:36)

06/24 20:19, , 7F
這的確很奇怪.我建過好幾個資料庫,從未遇過這種問題.
06/24 20:19, 7F

06/24 20:35, , 8F
你確定不是第一筆消失,而是最後一筆?
06/24 20:35, 8F

06/24 20:41, , 9F
嗯嗯 是最後一筆 因為有編號
06/24 20:41, 9F

06/24 23:34, , 10F
感覺是SQL問題
06/24 23:34, 10F
文章代碼(AID): #1AGUFbEE (PHP)