[英]PHP-showing weird entries when retrieved from database
我已經編寫了此PHP代碼,但給出了一些奇怪的結果。 片段是
$queryIsbnArr = mysql_query("select ISBN from quotation_master") or die(mysql_error());
$row = mysql_fetch_array($queryIsbnArr) or die(mysql_error());
print_r($row);
$_SESSION['isbnArr'] = $row;
查詢給出的輸出是..
Array ( [0] => 12121 [ISBN] => 12121 )
在數據庫上運行時查詢所給出的輸出在哪里
12121
56
哪個是正確的,那這是什么問題?
閱讀手冊 !
返回與獲取的行相對應的字符串數組;如果沒有更多行,則返回FALSE。 返回數組的類型取決於result_type的定義方式。 通過使用MYSQL_BOTH(默認),您將獲得一個具有關聯索引和數字索引的數組。
mysql_fetch_array()
提取每行數據的數字數組和關聯數組。 您需要使用或另一個來獲取實際數據,因為$row
將整個數據集包含為一個數組,即使它只是一個值也是如此。
$queryIsbnArr = mysql_query("select ISBN from quotation_master") or die(mysql_error());
$row = mysql_fetch_assoc($queryIsbnArr) or die(mysql_error());
print_r($row['ISBN']);
$_SESSION['isbnArr'] = $row;
僅供參考, 您不應在新代碼中使用mysql_*
函數 。 它們不再維護,已正式棄用 。 看到紅色框了嗎? 相反,要了解准備好的語句 ,並使用PDO或MySQLi- 本文將幫助您確定哪一個。 如果您選擇PDO, 這是一個很好的教程 。
很好,當您使用mysql_fetch_array
,它將通過索引和列名在兩個地方為您帶來價值
對於多行,您必須像這樣遍歷:
while($row = mysql_fetch_array($queryIsbnArr)){
print_r($row);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.