私は混乱しています。私は、PHP関数に投稿するJavaScript関数を持っています。 PHPはmPicker
の "未定義インデックス"と言っています。しかし、var_dump
と同じ関数内にmPicker
と表示されていれば明らかです。同じ関数内のvar_dumpがデータを表示していても、ポスト関数はPHP関数では機能しません
私はまた、フォームデータがシリアル化されたことを確認するJavaScriptでのアラートクライアント側を走ってきた、そしてそれはあまりにもmPicke
rは確かに価値があることを示しています。しかし、PHPのこの行は次のエラーを返します:
$es=$_POST["mPicker"];
これはあなたのためにちょうど短い手です。より長いバージョンのコードは、SQLインジェクションのテストを行います。
そしてxdebugの中のエラー:
JavaScriptコード:PHPの関数コードの
$.post("./php/adates.php", { atype: apttype, data: $("#apptForm").serialize() })
.done(function(data) {
alert(data);
});
そして、もっと:
if (isset($_POST["atype"]) && !empty($_POST["atype"])) {
$typ = test_input($_POST['atype'], $con);
} else {
echo "error ln 6: typ is undefined.";
}
$es=$_POST["mPicker"];
echo $es;
exit;
test_input
機能IですSQLインジェクションのテストとjuテストのためのstは、mPicker
のポストで一時的に省略しました。ご覧のとおり、$_POST["atype"]
行はエラーをエスケープし、PHP関数で完全に解決されています。私は疲れていると知っている何か愚かなものを逃す必要があります。助け、誰でも!
初めてページが読み込まれると、$ _POST ['mpicker']は設定されません。エラーまたは警告が表示されます。あなたがatypeをテストするのと同じ方法でmPickerをテストします。 – user2182349
「atype」と「データ」という2つのフィールドを正確に投稿しているようです。 – nnnnnn
'!empty'で十分で、' isset'は必要ありません。 – chris85