Image for reference我不知道我错了。有人可以帮我这个吗?我现在觉得很蠢
function total_price() {
$total = 0;
global $con;
$ip = getIp();
$select_price = $con->query("SELECT * from shoppingcart WHERE IP_address='$ip'");
while($row = $select_price->fetch_assoc()) {
$pro_id = $row['Product_id'];
$quan = $row['Quantity'];
$query = $con->query("SELECT * FROM products WHERE prod_id='$pro_id'");
while($row2 = $query->fetch_assoc()) {
$row2['product_price'] *= $quan;
$productprice = array($row2['product_price']);
$values = array_sum($productprice);
$total += $values;
}
}
echo "₱: ".$total;
}
答案 0 :(得分:0)
我认为您的$ con>查询(...)失败,因此您$select_price
是FALSE
而不是具有某些成员函数的对象。
查看$ mysqli :: query
的文档http://php.net/manual/en/mysqli.query.php
如果您想获取sql错误,请打印$con->error
的结果。
例如:
$select_price = $con->query("SELECT * from shoppingcart WHERE IP_address='$ip'");
if($select_price == FALSE) {
echo "SQL-Error:".$con->error
exit;
}
while($row = $select_price->fetch_assoc()) {
...
答案 1 :(得分:0)
如果fetch_assoc失败,则结果集存在问题。
问题在于:
$查询
或
$ select_price
不是有效的结果集。
原因可能是数据库的查询失败。
您可以通过执行以下操作来检查:
的print_r($ select_price); 的print_r($查询);
应输出:资源ID #XX - >如果没有,请再次检查您的查询SQL。
希望这会有所帮助