PDO更新错误:参数编号无效-未定义参数


PDO Update Error: Invalid Parameter number - Parameter was not defined

我已经阅读了关于这个错误的所有主题:

异常"PDOException",消息为"SQLSTATE[HY093]":无效参数编号:未定义参数

但似乎找不到我哪里错了。

我的代码:

$pdo->executePrepared([
        "query"=> "UPDATE users SET studie = :studie, studieland = :studieland, typestudie = :typestudie,
                   jaaropleiding = :jaaropleiding, onderwijsinstelling = :onderwijsintelling,
                   biografie = :biografie, voornaam = :voornaam, achternaam = :achternaam,
                   geslacht = :geslacht, geboortedatum = :geboortedatum WHERE userid = :userid LIMIT 1",
        "params"=>[
            ":studie"=> addslashes($studie_correct),
            ":studieland"=> $_POST['studieland'],
            ":typestudie"=> $typestudie,
            ":jaaropleiding"=> $_POST['jaaropleiding'],
            ":onderwijsinstelling"=>addslashes($_POST['onderwijsinstelling']),
            ":biografie"=> addslashes($_POST['biografie']),
            ":voornaam"=> addslashes($_POST['voornaam']),
            ":achternaam"=> addslashes($_POST['achternaam']),
            ":geslacht"=> $_POST['geslacht'],
            ":geboortedatum"=> $_POST['geboortedatum'],
            ":userid"=> $userid
        ]
    ]);

所有参数都有一个值,因此它们都是定义的。

我做了很多这样的陈述,它们都很好,但我不知道这里出了什么问题。

感谢您的帮助。

我认为您使用的是Phalcon'Db'Adapter'Pdo'Mysql?只需移除数组键中的":"即可。仅从参数数组中删除它们,而不是从查询字符串中删除。

$pdo->executePrepared([
        "query"=> "UPDATE users SET studie = :studie, studieland = :studieland, typestudie = :typestudie,
                   jaaropleiding = :jaaropleiding, onderwijsinstelling = :onderwijsintelling,
                   biografie = :biografie, voornaam = :voornaam, achternaam = :achternaam,
                   geslacht = :geslacht, geboortedatum = :geboortedatum WHERE userid = :userid LIMIT 1",
        "params"=>[
            "studie"=> addslashes($studie_correct),
            "studieland"=> $_POST['studieland'],
            "typestudie"=> $typestudie,
            "jaaropleiding"=> $_POST['jaaropleiding'],
            "onderwijsinstelling"=>addslashes($_POST['onderwijsinstelling']),
            "biografie"=> addslashes($_POST['biografie']),
            "voornaam"=> addslashes($_POST['voornaam']),
            "achternaam"=> addslashes($_POST['achternaam']),
            "geslacht"=> $_POST['geslacht'],
            "geboortedatum"=> $_POST['geboortedatum'],
            "userid"=> $userid

Phalcon PDO文件:https://docs.phalconphp.com/en/latest/api/Phalcon_Db_Adapter_Pdo_Mysql.html