我查詢從數據庫中,有超過一個結果應查詢結果。但是,當我試圖顯示查詢的結果時,只顯示一個結果,所以我嘗試使用foreach函數,但它仍然不起作用。我被打敗了,不知道我做錯了什麼。任何人都知道發生了什麼問題?的MySQL/PHP的foreach仍然只能顯示第一數據庫
這裏的MySQL查詢代碼:
<?php
//Database Information
$dbhost = "";
$dbname = "";
$dbuser = "";
$dbpass = "";
//Connect to database
mysql_connect ($dbhost, $dbuser, $dbpass)or die("Could not connect: ".mysql_error());
mysql_select_db($dbname) or die(mysql_error());
$filename = $_GET['filename'];
$new_captions = mysql_query("SELECT * from captions where image = 'http://math.stanford.edu/inc/img/PalmDrive.png' ORDER BY idnum DESC LIMIT 5");
while($rows = mysql_fetch_array($new_captions)){
$caption = $rows;
}
?>
而這裏的的foreach:
<?php foreach($caption as $rows) {?>
<div id="set_caption" style="width:<?php echo $caption['width'];?>px; height:<?php echo $caption['height'];?>px; left:<?php echo $caption['posleft'];?>px; top:<?php echo $caption['postop'];?>px;"><?php echo $caption['text'];?></div>
<?php } ?>
它總是存儲在最後一個值,因爲要覆蓋$標題的每執行一次循環的值。相反,你要遵循羅伯特的正確方法。 –