0

mysqlデータベースのデータの読み取り、書き込み、および変更を行うページを作成しています。私はphpとcodeigniterを使用してクエリを実行していますが、ユーザーに表示されるページはjavascriptを使用しており、ユーザーの選択に基づいてデータを動的に入力および変更しています。これを行うために、私はphpからjavascript関数に、またはその逆に多くのデータをやり取りしていますが、データをフォーマットするより良い方法があるかどうか疑問に思っています。たとえば、XMLHttpRequestを使用してphp関数を呼び出し、結果を取得するjavascript関数を次に示します。

var myarray = new Array(2);
myarray[0] = document.getElementById("my_input").value;
myarray[1] = document.getElementById("my_select").value;
xmlhttp.open("POST", "my_url/my_function/"+myarray.join('|'), false);
xmlhttp.send();
document.getElementById("my_element").innerHTML=xmlhttp.responseText;

php関数に渡された文字列に対してexplode()を実行し、必要なクエリを実行するだけです。これは、phpとjavascriptの間の非常に厄介な相互作用のようです。これを行うためのより良い、または少なくとも異なる方法はありますか?

4

1 に答える 1

3

JSON(JavaScript Object Notation)はあなたが探しているもののようです。JSON.stringifyを使用して、ほぼすべての種類のJavascript変数を文字列に変換し、後でjson_decodeを使用してphpで元の構造を復元し、 json_encodeJSON.parseを使用してその逆を行うことができます。

見る:

于 2012-09-10T22:11:02.347 に答える