-1

私はもともと、次のPHPコードを使用して、フォーム上のすべてのアイテムをテーブルの「TEXT」フィールドに保存しました。

$the_field = json_encode($_POST);

次に、POSTフォームを自動的に保存するようにする必要があります(変更が加えられた場合)。

$.post("ajax.php?"+$("#form_id").serialize(),
                          { id: '<?php echo $id;?>' },
                     function(data){});

ajax.phpには次のコードが含まれています。

$the_field = json_encode($_GET);

これは、元々json_encodeと$_POSTを使用した場合と同じ結果になります。

私のサーバーでは、アイテムが1文字の長さであるか、50文字以上の長さであるかにかかわらず、配列内のアイテムを含む100個の$_GETアイテムの制限があるようです。

この制限は、元のページとajax.phpにもあります

コンパクトなコードを使用しながら、このような制限のない代替方法があるかどうか疑問に思いました。配列を許可する必要があります...例:name ="var['。$x。']['。$y。']"

4

2 に答える 2

1

フォームをserialize()し、javascriptを使用して任意のオブジェクトをjsonにエンコードできます。

JSON.stringify()parse_str( )を見てください

OPリクエストで編集:

解決:

$.post("ajax.php", { data: $("#the_form").serialize()}

およびajax.phpの場合:

parse_str($_POST['data'], $data_obj);
于 2013-03-26T09:43:39.703 に答える
0

しかし、あなたはで試すことができますjson

$.post("ajax.php", { id: '<?php echo $id;?>', data: $("#form_id").serialize()}, function(data){
   console.log(data);
}, "json");
于 2013-03-26T09:48:30.960 に答える