このタイトルで多くの質問がありますが、私の問題を解決することはできません。 これは無効なパラメータ番号:バインドされた変数の数がトークンの数と一致しません
global $connPDO;
ini_set('date.timezone', 'Asia/Karachi');
$date = date('Y-m-d H:i:s');
$sql = "INSERT INTO `pqa` VALUES (null, :ProId, :ProQuestion, null, '$date', null)";
$queryInsert = $connPDO->prepare($sql);
try {
//Post contain $_POST["ProId"], $_POST["ProQuestion"];
$querySuccess = $queryInsert->execute($_POST);
echo $querySuccess;
}
catch(Exception $e) {
echo '<h1>An error has ocurred.</h1><pre>', $e->getMessage() ,'</pre>';
}
Catchブロックの実行が、エラーを与えていないテーブルにデータを追加する簡単なコードPHPです。
var data = {
"action" : "SaveProjectNewQuestion",
"ProId" : 1,
"ProQuestion" : $jqueryLib("#NewQuestion").val()
};
$jqueryLib.ajax({
url : "ESP.php",
type : "POST",
data : data,
success : function(data, textStatus, XMLHttpRequest) {
console.log(data);
},
error: function(jqXHR, textStatus, errorThrown) {
console.log(textStatus, errorThrown);
}
});
この警告を示す驚くほど成功したログで、データも挿入されていません。
警告(!): はPDOStatement ::実行():SQLSTATE [HY093]:無効なパラメータ番号:バインド変数の 数 C内のトークンの数と一致しません:\ WAMP \ WWW \ ESP \ラインあなたは「どのように修正する必要があり ............................
'$ _POST'には何がありますか?その上で 'var_dump();'を実行します。 – Qirel
ProjectIdとProjectQuestionデータ –