[英]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.