Gần đây tôi đã chuyển sang sử dụng PDO trong PHP/MySQL và chuyển đổi một số truy vấn. Hầu hết trong số họ làm việc, tuy nhiên một trong rất dễ dàng này ném một ngoại lệ tại $sql->execute()
PDO - Số tham số không hợp lệ
$sql=$pdo->prepare("SELECT id FROM user WHERE username = :username LIMIT 1");
$sql->execute(array(':username',$username));
PDOStatement :: thực hiện() pdostatement.execute SQLSTATE [HY093]: số tham số không hợp lệ: số biến ràng buộc không khớp với số các mã thông báo trong ...
Sau khi nghiên cứu, tôi thấy liên kết này: https://bugs.php.net/bug.php?id=60515
... và do đó đã cố gắng để thay đổi truy vấn để
$sql=$pdo->prepare("SELECT `id` FROM `user` WHERE `username` = :username LIMIT 1");
$sql->execute(array(':username',$username));
Nhưng vẫn có kết quả tương tự. Có ai nhìn thấy những gì rõ ràng là sai hoặc tại sao truy vấn này không hoạt động khi tất cả những người khác đã làm gì?
Cảm ơn bạn rất nhiều trước!
"* PDO - Số tham số không hợp lệ ** mặc dù nó đúng ***". Không, không đúng. – Lion
@Lion: vâng, bạn đúng ... đã thay đổi tiêu đề ... Tôi đã bị mù, cảm ơn sự giúp đỡ của bạn! – Chris