gpt4 book ai didi

php - PDO - 参数编号无效

转载 作者:可可西里 更新时间:2023-11-01 06:28:19 26 4
gpt4 key购买 nike

就在最近,我转而在 PHP/MySQL 中使用 PDO 并转换了数十个查询。它们中的大多数都有效,但是这个非常简单的方法会在 $sql->execute()

处抛出异常
$sql=$pdo->prepare("SELECT id FROM user WHERE username = :username LIMIT 1");
$sql->execute(array(':username',$username));

PDOStatement::execute() pdostatement.execute SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens in ...

经过研究,我找到了这个链接:https://bugs.php.net/bug.php?id=60515

...因此尝试将查询更改为

$sql=$pdo->prepare("SELECT `id` FROM `user` WHERE `username` = :username LIMIT 1");
$sql->execute(array(':username',$username));

但结果还是一样。有没有人看到明显错误的地方,或者为什么这个查询不起作用,而其他所有查询都起作用?

非常感谢您!

最佳答案

这不是错误,您只为一个占位符提供了两个参数。

$sql->execute(array(':username',$username));

应该是

$sql->execute(array(':username' => $username));

关于php - PDO - 参数编号无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11408037/

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