CakePHP1.3 FormのGETとPOSTとAjaxで渡されてくる値
CakePHPマニュアルを見ながらちょこちょこと何かを作っていますが、フォームのGET,POSTでコントローラに渡されてくる値のとり方が違うので躓いたのでメモ。
POSTの場合
$this->data["モデル名"][key]
GETの場合
$this->params["url"][key]
Ajaxの場合(jQueryのPOST)
$this->params["form"][key]
見事にバラバラとかなんなの…。試してないけどAjaxでGET通信の場合はGET通信と同じなのかな?
すごい気持ち悪いけどこれが仕様なんですかね。
渡され方を見るとPOST通信の場合もViewでなんかすれば、Ajaxと同じ渡され方になるような気がするけど。
あとjQueryとPHPを両方編集してると頭おかしくなりそう。$打つのめんどい。まじ。
追記
フォームでモデルを指定すると直接データに入ってくるだけだった。
何もしないとPOSTの場合は$this->params["form"]に入ってきてGETだと$this->params["url"]に入ってくるということですね。わかりました。