gpt4 book ai didi

php - PDO fetchAll() 返回一个空数组

转载 作者:可可西里 更新时间:2023-11-01 07:09:04 24 4
gpt4 key购买 nike

在我的代码中,我试图使用 PDO 从我的数据库中获取数据并绑定(bind)参数,但我一直在获取空数组,这是我的代码:

try{
$pdo =new PDO('mysql:host=localhost;dbname=***', '***','***');
$pdo->setAttribute(pdo::ATTR_ERRMODE,
pdo:: ERRMODE_EXCEPTION);
$pdo->query('set names "utf8"');
}
catch (PDOException $e) {
die('error connectin database');
}
$table = 'products';
$column = 'id';
$niddle = '70';
$sql = "SELECT * FROM `{$table}` WHERE ";
$sql .= ":column LIKE :niddle";
$pre = $pdo->prepare($sql);
$pre->bindParam(':column', $column ,PDO::PARAM_STR);
$pre->bindParam(':niddle', $niddle, PDO::PARAM_STR);
$result = $pre->setFetchMode(PDO::FETCH_ASSOC);
$pre->execute();
print_r($pre->fetchAll());

没有抛出异常,可能是什么问题?

最佳答案

您不应将列名绑定(bind)为准备好的语句参数字符串,因为它会引用列名。就像您对表名所做的那样,只需在将其列入白名单后使用它即可。

关于php - PDO fetchAll() 返回一个空数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16252404/

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