我在外部文件中有这个php脚本试图从db获取随机问题:
<?php
//connect to db
require_once('db.php');
$id=rand(0,13); //2nd number = highest ID
if ($resQ = $mysqli->query("SELECT Quest FROM qa WHERE ID='$id'")){
echo "" . $resQ['Quest'] . ""; //This is Line 9
$resQ->close();
}
$mysqli->close();
?>
我在我的页面中将其称为
<body>
code...
<?php require_once('script/m_q.php'); ?>
...code
</body>
但我得到错误:
致命错误:不能在第9行的... / m_q.php中使用mysqli_result类型的对象作为数组
有任何帮助吗? 谢谢
谢谢大家...不幸的是,我只能接受一个答案,我选择的是首先回答的答案。
答案 0 :(得分:3)
您必须调用fetch_assoc()
对象的mysqli_result
方法才能访问数据:
<?php
//connect to db
require_once('db.php');
$id=rand(0,13); //2nd number = highest ID
if ($resQ = $mysqli->query("SELECT Quest FROM qa WHERE ID='$id'")){
$data = $resQ->fetch_assoc();
echo "" . $data['Quest'] . ""; //This is Line 9
$resQ->close();
}
$mysqli->close();
?>
答案 1 :(得分:2)
mysqli :: query确实返回结果集,您必须获取行才能访问列。
答案 2 :(得分:2)
您需要先获取数据。
$rs = $resQ->fetch_assoc();
echo $rs['Quest'];
答案 3 :(得分:0)
$ resQ无法进入if语句...首先使用mysql_fetch_assoc或mysql_fetch_array为其分配数据。