PDO:参数号无效

时间:2013-12-09 18:28:10

标签: php mysql pdo

我正在制作IS而且我在更新mysql表时遇到问题。我正在使用PHP 5.3和PDO。

            $query_update = $this->db_connection->prepare('UPDATE Client SET name =: name, surname=:surname WHERE id=:id');
            $query_update->bindValue(':id', $id, PDO::PARAM_INT);
            $query_update->bindValue(':name', $name, PDO::PARAM_STR);
            $query_update->bindValue(':surname', $surname, PDO::PARAM_STR);
            $query_update->execute();

警告:PDOStatement :: execute()[pdostatement.execute]:SQLSTATE [HY093]:参数号无效:绑定变量数与第X行文件中的标记数不匹配。 警告是使用execute()引用行。

感谢您的帮助。

编辑:现在正在工作,再次感谢您的帮助。

1 个答案:

答案 0 :(得分:6)

你的空间太大了。纠正您对此的查询:

$this->db_connection->prepare('UPDATE Client SET name =:name, surname=:surname WHERE id=:id');
// -----------------------------------------------------^

这导致查询中只使用了两个变量,这与您提供的3个变量不匹配。

(您在当前表单中的查询无论如何都应该在同一位置发出错误。)