私は現在、フォームからシリアル化されたデータに追加データ(特に配列)を追加し、後でPHP経由でアクセスする適切な方法を探しています。私はたくさん試しましたが、実際には何もできませんでした。例えばjQuery:ajax経由でシリアル化されたフォームデータに配列を追加し、PHPでアクセスしますか?
:
HTML:
<form id='addUserForm'>
<input type='text' name='firstname'>
</form>
JS/jQueryの:
var testArr = {
one: "1",
two: "2",
three: 3
};
var ser = $("#addUserForm").serializeArray();
ser.push({ newArr:testArr});
console.log(ser);
$.ajax({
type: "POST",
url: url,
data: ser,
});
IはserializeArray()を使用し、serializedArrayに新しい配列を押し込みます。 私はconsole.log - >それは正常に動作します。しかし、私は次のようにPHPでそれにアクセスしようとしているとき:
var_dump($_POST);
私が手:
array(2) {
["firstname"]=>
string(6) "123123"
["undefined"]=>
string(0) ""
}
それはそれはJSではconsole.logを経由して、プッシュだったにも関わらず、「未定義」であると述べています成功した。
また、私はJSON.stringify(ser)
とdata: {ser:ser}
- > JSON文字列に変換しようとしましたが、それにはアクセスするのが面倒です。
$_POST[0]['value']
の代わりに、$_POST['firstname']
と$_POST['testarr']
でPHPにアクセスしたいとします。
私はそれが理に適ったと思います。とても短い話です:シリアル化された文字列に追加のデータ/配列を追加し、後でPHPで正しくアクセスするにはどうすればいいですか?
$( "#addUserForm")には何が含まれていますか? –
私の投稿を編集しました。 –