[英]Why is my PHP Database query returning 6 rows when only 2 entries?
我的數據庫表中有2個條目,但是由於某種原因,我的PHP / SQL顯示了6個重復項。
<?
mysql_select_db($database_database_connection, $database_connection);
$getdevices=("SELECT * FROM Device_tbl");
$getdevicesresult = mysql_query($getdevices, $database_connection) or die(mysql_error());
while($device=mysql_fetch_assoc($getdevicesresult))
{
foreach($device as $devicevalue) { ?>
<div class="hold-cont">
<div class="holder">
<div class="image-hold" >
<img class="image-icon" src="images/android.png"/>
</div>
</div>
<div class="device-name devicename-txt"><? print_r($device['Model']); ?></div>
</div>
<? }}
mysql_close();
?>
那應該只返回2行,而不是每個條目6行。 有任何想法嗎?
您要遍歷兩次結果。 擺脫不必要的foreach()
調用( while()
將遍歷查詢的所有結果)。
<?php
mysql_select_db($database_database_connection, $database_connection);
$getdevices=("SELECT * FROM Device_tbl");
$getdevicesresult = mysql_query($getdevices, $database_connection) or die(mysql_error());
while($device=mysql_fetch_assoc($getdevicesresult)){
?>
<div class="hold-cont">
<div class="holder">
<div class="image-hold" >
<img class="image-icon" src="images/android.png"/>
</div>
</div>
<div class="device-name devicename-txt"><?php echo $device['Model']; ?></div>
</div>
<?php
}
mysql_close();
?>
注意: 我也將print_r(...)
更改為echo ...
因為$device['Model']
不是數組,並且我將您的短標簽( <?
)更改為普通標簽( <?php
),因為並非所有服務器都支持short tags
(請參閱可以使用PHP短標記嗎? )。
請更正以下行
<div class="device-name devicename-txt"><? print_r($device['Model']); ?></div>
與
<div class="device-name devicename-txt"><? echo($devicevalue['Model']); ?></div>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.