2011-11-08 107 views
1

我有一個單表的數據庫和表中的兩個字段,一個ID號和文件名。我使用這個數據庫來允許在一個PHP腳本中進行分頁,這樣我就可以在每頁顯示一組照片。MySQL選擇查詢跳過第一項

這裏是前5個entires,代碼我使用教派從DATABSE:

1 - DSC_5480.jpg 
2 - DSC_5483.jpg 
3 - DSC_5487.jpg 
4 - DSC_5488.jpg 
5 - DSC_5489.jpg 

和代碼的HTML把它打印出來:

if (isset($_GET["page"])) { $page = $_GET["page"]; } else { $page=1; }; 
$start_from = ($page-1) * 25; 
$data = mysql_query("SELECT * FROM $db_base.$db_tble LIMIT $start_from, 25") 
or die(mysql_error()); 
$pictures = mysql_fetch_array($data); 


while($pictures = mysql_fetch_array($data)) 
{ 
echo "\t\t" . '<img src="images/' . $pictures['filename'] . '" alt="' . $pictures['filename'] . '" />' . "\n"; 
} 

我的問題從HTML代碼中可以看到,表中的第一個條目被跳過。

<img src="images/DSC_5483.jpg" alt="DSC_5483.jpg" /> 
<img src="images/DSC_5487.jpg" alt="DSC_5487.jpg" /> 
<img src="images/DSC_5488.jpg" alt="DSC_5488.jpg" /> 
<img src="images/DSC_5489.jpg" alt="DSC_5489.jpg" /> 
<img src="images/DSC_5491.jpg" alt="DSC_5491.jpg" /> 

所以我的問題是我做錯了什麼,不允許第一個條目被顯示?

+0

您是否嘗試過使用'ORDER BY'子句來重新排序結果集? –

+0

@Brandon執行查詢時,'$ start_from'的值是什麼?你有沒有試過打印這個值? – Zohaib

回答

6

看看代碼片斷,你已經寫兩次這樣一句話:$pictures = mysql_fetch_array($data);

它應該是,

$data = mysql_query("SELECT * FROM $db_base.$db_tble LIMIT $start_from, 25") 
or die(mysql_error()); 

while($pictures = mysql_fetch_array($data)) 
{ 
echo "\t\t" . '<img src="images/' . $pictures['filename'] . '" alt="' . $pictures['filename'] . '" />' . "\n"; 
} 
+1

+1好抓住那裏。 –

+1

謝謝!完全沒有意識到我做到了這一點,但我可以看到它現在把所有東西都弄亂了。 – Brandon