我要做的是获取$ r变量的值(返回一些车辆ID值)以显示在页面上。但是它会返回以下错误。
可恢复的致命错误:类mysqli_result的对象不可能 转换为字符串 C:\ XAMPP \ htdocs中\定力\ SYSTEM \模块\预订\控制器\ reservationcontroller.php 在第166行
问题出在echo $r
声明中。我试过回声' $ r'但是,即使它显示消息'车辆可用'。
if ($nor > 0) {
$r = $objs->searchVehicle($vhandover, $vreturn, $seatcap);
if ($r) {
$msg = "Vehicle available";
$status = 1;
echo $r;
} else {
$msg = "Something is not right!";
$status = 0;
}
}
我在这里做错了什么,如何纠正?
提前致谢:)
答案 0 :(得分:1)
我假设您的车辆表有以下栏目 - id, name, type
。执行查询时,$r
包含一个带搜索结果的关联数组 -
$r = [ ['id'=>1, 'name'=>"toyota", 'type'=> "regular"], ....]
这不是任何String
。因此,如果您想要echo
任何列值,您需要提及它 -
echo $r['name'];
但是如果您的查询返回多个结果,则需要将echo
置于foreach
循环中。
foreach($r as $row) {
echo $row['name'];
}
<强>更新强>
如果上述代码对您不起作用,请尝试以下操作 -
while($row = $r->fetch_assoc()) {
echo $row['id'];
}
更新:2
您可以使用fetch_array($r)
-
while ($row = fetch_array($r)) {
echo $row['name'];
}
希望清除你的概念!