You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PDO普通查询正常,但预处理语句无输出问题求助

PDO预处理语句错误排查与修正

你的预处理代码存在两个关键错误,导致无输出:

  • execute()参数格式错误:PDO的execute()方法要求参数以数组形式传入,直接传单个值12无法完成参数绑定,会导致SQL语句执行失败。
  • fetch调用语法错误:fetch是PDOStatement类的方法,必须通过()调用才能获取结果,你遗漏了括号,导致$nn3只是方法的引用,而非查询返回的数据。

修正后的代码如下:

$stmt3 = $pdo->prepare("SELECT nick FROM users WHERE ID=?");
$stmt3->execute([12]); // 用数组传递参数
$nn3 = $stmt3->fetch(); // 调用fetch方法需加括号
echo $nn3["0"];

另外,建议开启PDO的错误提示,方便后续排查问题,可以在初始化PDO时添加错误模式:

$pdo = new PDO($dsn, $user, $pass, [
    PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
]);

内容的提问来源于stack exchange,提问作者Bodongo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 19:25:40