【问题标题】:Warning: PDOStatement::execute(): SQLSTATE[HY093]: Invalid parameter number警告:PDOStatement::execute(): SQLSTATE[HY093]: 参数号无效
【发布时间】:2014-04-07 18:06:30
【问题描述】:

我在使用 pdo 选择语句时出错,我不明白发生这种情况的原因。

你觉得这里有什么问题吗?

我遇到了这个错误:

警告:PDOStatement::execute(): SQLSTATE[HY093]: Invalid parameter number: parameter is not defined in $readGallery->execute();

$delId = $_GET['delid'];
$thumb = $_GET['thumb'];
$folder = '../uploads/';
$readGallery = $pdo->prepare("SELECT * FROM gallery WHERE news_id = ?");
$readGallery->bindParam(':news_id', $delId);
$readGallery->execute();
$numGallery =   $readGallery->rowCount();

【问题讨论】:

  • WHERE news_id = :news_id 这不是mysqli() ;-)
  • 要进一步详细说明@Fred-ii- 所说的内容,请参阅此reference material...

标签: php pdo


【解决方案1】:

改变

$readGallery = $pdo->prepare("SELECT * FROM gallery WHERE news_id = ?");

$readGallery = $pdo->prepare("SELECT * FROM gallery WHERE news_id = :news_id");

【讨论】:

  • 你不是应该吃午饭吗?大声笑 +1 给你,为什么不 ;-)
  • 嗯,我属于一个时区,几乎是 2014 年 3 月 8 日星期二 :-)
  • 那么吃早餐,或者吃宵夜 ;-) 这里是午餐时间。
猜你喜欢
  • 1970-01-01
  • 2016-04-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多