gpt4 book ai didi

Php,PDO 查询,获取所有返回无

转载 作者:搜寻专家 更新时间:2023-10-30 22:11:22 25 4
gpt4 key购买 nike

我正在尝试使用 fetchALL() 从 Select 语句中获取结果,但由于某种原因没有任何效果。这是代码示例:

$vars = array(':name' => $_POST['name'], ':id' => $_POST['id']);

$stmt = $dbh->prepare("SELECT * FROM temp_table WHERE name=:name AND id=:id");

if($stmt->execute($vars)){
if($stmt->fetchColumn() > 0){
echo "Found";
$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
print_r($result);
}else{
echo "Not found";
}
}else{
echo "Error";
}

语句成功执行,它找到了一列,就像它应该的那样,它回显“找到”,但是数组出现为空,它只是出现为 array() 一切都执行嗯,只是 fetch,或者 fetchAll() 总是返回空。任何帮助将不胜感激!

最佳答案

您正在尝试在 fetchColumn 之后获取全部。

fetchColumn

Returns a single column from the next row of a result set or FALSE if there are no more rows.

fetchAll

PDOStatement::fetchAll() returns an array containing all of the remaining rows in the result set.

因此,您可以像这样重写它。

 if($result = $stmt->fetchAll(PDO::FETCH_ASSOC)){
echo "Found";
print_r($result);
}else{
echo "Not found";
}

关于Php,PDO 查询,获取所有返回无,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27595698/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com