そのため、私はこの問題に対する答えを何年も探していましたが、解決策を見つけることができません。
エラーは次のとおりです。
Invalid parameter number: number of bound variables does not match number of tokens
もちろん、このエラーが何を意味するかはわかっていますが、何かを一重引用符で囲んだ場合にのみ実際にスローされる理由がわかりません。
これが私のコードです:
$query = "UPDATE $DbTableName SET name=':name' WHERE id=:Id";
$result = $dbc->prepare($query); //Prepare query
$values = array('Id' => $Id, 'name' => $name); //Prepare values
$result->execute($values); //Execute Query
:name を一重引用符で囲んでください。
これらの引用符を削除すると、PDO エラーは発生しませんが、文字列を単一引用符で囲む必要があるため、MySQL エラーが発生します..
どうすればこれを回避できますか?
名前を引用符なしで bob に設定すると、MySQL エラーが発生します。
#1054 - Unknown column 'bob' in 'field list'
前もって感謝します