我有一张table product
有列的 id, name, price, desc
. 但我只需要展示 price
搜索到的产品。
例如,当用户输入0001时,查询应该执行并返回一个值 $price
5.00美元。
$sqlprice = $DB->Prepare("SELECT price FROM product WHERE id = '0001'");
$sqlprice -> Execute();
$result = $sqlprice->get_result();
$price = $result->fetch_assoc();
然而 $price
变量中没有任何值。我在代码中做错了什么?我已经搜索了许多线索,但似乎没有一个答案,我的问题。
6条答案
按热度按时间r7xajy2e1#
我真的不知道为什么…但这对我来说很有效,经过多次尝试。
ftf50wuq2#
$result->fetch_assoc()
返回一个关联数组,您可以像$array["name"]
.如果查询正确,您应该通过访问
$price["price"]
. 但是如果$price中没有任何值(==null),那么查询的执行就有问题了/数据库中没有值。您还可以尝试以下方法(假设您使用pdo),看看是否有效:
对于mysqli:
bqjvbblv3#
假设
$sqlprice
是我推荐使用的mysqli示例$sqlprice->fetchAll(PDO::FETCH_ASSOC)
zfciruhq4#
我想
0001
产品的id在您的product
table。如果是这样,则可以尝试以下查询:您的结果将存储在
$query
你可以通过打印检查print_r($query->result());
让我知道这个问题是否对你有效。scyqe7ek5#
访问您的价格
$price[0]
或者$price['price']
. 如果$price应该为空,则您的sql查询不成功。你应该相应地处理这个案子。我建议你熟悉一下
var_dump()
以及print_r()
用于调试的方法:)jyztefdp6#
你可以一步一步地检查问题出在哪里