URLのパラメータでJavaScript -> PHPに配列を渡す方法


var ids = new Array();
//連想配列はlengthで数を取得できないので独自にカウント

var ids_num = 0;
sm.each(function(rec){
var key = "id[" + ids_num + "]";
ids[key]= rec.get("id");
ids_num ++;
});


こんな風に作った連想配列を


?ids[0]=test1&ids[1]=test2


のように渡すとPHP側では


$_REQUEST["ids"][$i]


のように受け取れる。

JavaScriptから安全に文字列をパラメータで渡す場合

encodeURIComponent(string)

を使う。

デコードは

string = decodeURIComponen(string)


文字コードはUTF-8になる



基本UTF-8での動作なのでHTMLやJSはUTF-8で統一する。


また、最初に必ず ext-lang-ja.js を読み込む。


PHPの保存は

・入力処理(DBへの格納など)をするもの -> 内部文字コード

・出力処理(XMLやJSON等の書き出しなど)をするもの -> UTF-8

とする。


入力時の処理

・特に無し


出力時の処理

・mb_convert_encoding()で内部文字コード→UTF-8に文字列をコンバートする。