[CodeIgniter2] form_open()のメソッドをGETにする

公開
更新日

スポンサーリンク

CodeIgniterのフォームヘルパーのform_open()はフォームの開始タグを出力してくれる。CSFRなどのセキュリティ対策を行うにはform_open()を使う必要がある。

さて, form_open()のメソッドはデフォルトではPOSTである。

$this->load->helper('form');
echo form_open('foo');

// 結果
<form action='http://domain.com/foo' method="post" accept-charset="utf-8">

form_open()を使ってメソッドをGETにするにはどうすれば良いんじゃろ? と思ったが日本語版ユーザーガイドにはその方法が書いていない。代わりにStack Overflowで答えを見つけた。

$this->load->helper('form');
echo form_open('foo', array('method'=>'GET'));

// 結果
<form action='http://domain.com/foo' method="GET" accept-charset="utf-8">

第2引数でキーが”method”, 値が”GET”の連想配列を渡せばできる。form_open()の第2引数はIDやCLASSなどの属性を設定するためのものだが, methodの上書きもできるということらしい。

スポンサーリンク


Comment