簡體   English   中英

從數據庫中檢索時,PHP顯示奇怪的條目

[英]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_*函數 它們不再維護,已正式棄用 看到紅色框了嗎? 相反,要了解准備好的語句 ,並使用PDOMySQLi- 本文將幫助您確定哪一個。 如果您選擇PDO, 這是一個很好的教程

很好,當您使用mysql_fetch_array ,它將通過索引和列名在兩個地方為您帶來價值

對於多行,您必須像這樣遍歷:

while($row = mysql_fetch_array($queryIsbnArr)){
    print_r($row);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM