[英]mysql_fetch_row() function does not return entire row
我看到查詢的整個行的回聲:
echo "<ul>";
while($row = mysql_fetch_row($result))
{
echo "<li>{$row[0]}</li>";
}
echo "</ul>";
處理查詢時,數據庫中僅顯示一列(client_id),而不顯示整個行。 但是,當我使用
print_r(mysql_fetch_assoc($result));
在while循環之前,我可以看到顯示:
Array (
[client_id] => 1
[contact_first_name] => carla
[contact_last_name] => clausen
[business_name] => Banana Belt Liquors
[business_address] => 300 U.S. 24 Woodlan
[business_address2] =>
[business_city] => Woodland Park
[business_state] => Colorado
[business_zip] => 80863
[business_areaCode_phone] => 719
[business_phone] => 687
[business_phone2] => 9757
[business_url] => http://bananabeltliquors.com/
[business_email] => info@bananabeltliquors.com
)
mysql_fetch_row正在獲取整行,但是根據您的代碼,您僅從整行中獲取第一列。
echo "<ul>";
while($row = mysql_fetch_row($result))
{
print_r($row);////// this will print the entire row
echo "<li>{$row[0]}</li>";
echo "<li>{$row[1]}</li>";///for other columns
echo "<li>{$row[2]}</li>";
---------------------
----------------------
echo "<li>{$row[8]}</li>";
}
echo "</ul>";
您只是在回顯每個記錄的第一個字段。 如果您想看到它們,可以將代碼更改為:
echo "<ul>";
while($row = mysql_fetch_row($result))
{
echo "<li>".implode("<br/>", $row)."</li>";
}
echo "</ul>";
這將顯示列表項中每一行的所有字段,其中各行之間用一個分隔符分隔。
如果您希望每個字段都在其自己的列表元素中,則可以執行
echo "<ul>";
while($row = mysql_fetch_row($result))
{
echo "<li>".implode("</li><li>", $row)."</li>";
}
echo "</ul>";
$ row將返回整行,但$ row [0]僅具有第一列。 因此,您可以計算列數,然后迭代$ row。
echo "<ul>";
while($row = mysql_fetch_row($result))
{
$len = count($row);
for($i =0;$i<$len;$i++){
echo "<li>{$row[$i]}</li>";
}
}
echo "</ul>";
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.