CodeIgniter/フォームで連想配列

このQ&Aのポイント
  • CodeIgniterのフォームで連想配列を使用する方法について教えてください。
  • form_checkbox()関数で連想配列を渡す際の引数の使い方が分からないです。
  • CodeIgniterのフォームヘルパーで連想配列を利用して追加データを渡す方法を教えてください。
回答を見る
  • ベストアンサー

CodeIgniter/フォームで連想配列

CodeIgniter/フォーム form_checkbox() で連想配列を渡すときの引数(追加データの渡し方)が分からないので、教えてください。 >form_checkbox() >追加データを設定したい場合は、 第4引数にそれを文字列として渡すことができます: >echo form_checkbox('newsletter', 'accept', TRUE, $js) と書かれているのですが、連想配列を利用してかつ追加データも渡したいときは、どうなるのでしょうか? $data = array(   'name'    => 'newsletter',   'id'     => 'newsletter',   'value'    => 'accept',   'checked'   => TRUE,   'style'    => 'margin:10px',   ); $js = 'onClick="some_function()"'; echo form_checkbox($data, '', TRUE, $js) それとも、 echo form_checkbox($data, TRUE, $js) それとも、 echo form_checkbox($data, $js) ▽フォームヘルパー:CodeIgniter ユーザガイド 日本語版   http://codeigniter.jp/user_guide_ja/helpers/form_helper.html

  • re999
  • お礼率61% (476/777)
  • PHP
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

$dataを連想配列で指定する場合は、第二引数と第三引数は「NULL」でよいです。 echo form_checkbox($data, NULL, NULL, $js);

参考URL:
http://www.ci-guide.info/
re999
質問者

お礼

回答ありがとうございましたー

関連するQ&A

  • CodeIgniter/set_value()

    CodeIgniterのset_value()メソッドが2つある理由。その違いは何でしょうか? ・/system/helpers/form_helper.php ・/system/libraries/Form_validation.php それぞれに「set_value($field = '', $default = '')」がありますが、 この二つはどう違うのでしょうか? set_value()メソッドが書いてあるviewが、 どちらのメソッドを呼んでいるか、 どこで判断すればよいのでしょうか? form_input( 'name', set_value('name') ) ▽フォームヘルパー   http://codeigniter.jp/user_guide_ja/helpers/form_helper.html ▽フォームバリデーション(検証)   http://codeigniter.jp/user_guide_ja/libraries/form_validation.html

    • ベストアンサー
    • PHP
  • JScript 連想配列の動的宣言

    JScriptです。 連想配列でmap?の様に宣言する場合、 定数で無いと正しく処理されない様なのですが、 動的に宣言する方法はないでしょうか? var mymap = []; // 引数は予測できない為動的 var myarg = WScript.Arguments; mymap = ['myarg(0)': 0]; WScript.Echo(mymap['myarg(0)']); // 結果は空白である

  • フォームを使った配列変数の受け渡し

    PHP初心者です、よろしくお願いします。 フォームからPHPで配列変数を受け渡すことを考えています。 一次元配列はうまく渡せましたので、これを二次元にしましたところ、 うまく渡せません。基本的なPHPの文法がわかってないので、つまづい ています。多分、配列変数の記述方法がおかしいのだと思うのですが・・。 ご教授よろしくお願いします。 <html> <body> <form method = "POST" action ="test2.php" > <?php //データ渡し側 for ($i = 0 ;$i < 2 ;$i ++){ for ($j=0 ;$j <2;$j ++ ){ echo ("<input type ='text' name = 'data[$i][$j]' size ='10'>\n"); echo ("<br>\n"); } echo ("</tr>\n"); } ?> <input type="submit" name ="sbmit" value="data_input" > </form> </body> </html> <?php //データ受け側 for ($i = 0 ;$i < 2 ;$i ++){ for ($j=0 ;$j < 2;$j ++ ){ $tmp_data[$i][$j] = $_POST["data"][$i][$j]; echo ("$tmp_data[$i][$j] <br>\n"); } } ?> <html> <body> <form method = "POST" action ="test2.php" > <?php for ($i = 0 ;$i < 2 ;$i ++){ for ($j=0 ;$j <2;$j ++ ){ echo ("<input type ='text' name = 'data[$i][$j]' size ='10' value='$tmp_data[$i][$j]'>\n"); echo ("<br>\n"); } } ?> </table> <input type="submit" name ="sbmit" value="in" > </form> </body> </html> 実行結果は、 Array[0] Array[1] Array[0] Array[1] と表示されて、実際の入力した値が反映されません。

    • ベストアンサー
    • PHP
  • 連想配列の削除

    始めまして hirohiroOracle(名前は特に気にしないで下さい^^;) といいます。どうしてもわからない事がありこちらの方に書き込みさせて いただきました。 JAVASCRIPTでは var objValue=new array(); objValue("DATA1")=1000; objValue("DATA2")=2000; ..... と連想配列を使用する事が出来ますが for (properName in objValue) { alert(objValue[properName]); } の中で一度配列に追加したものを削除し 表示させなくするには どのようにすればよろしいでしょうか? objValue("DATA1")=undefind; としてもプロパティ自体は 残ってしまうらしく 消せません。ブラウザはIE限定のScript なのですが。皆様よろしくお願いします。

  • 連想配列を変数にする?

    こんにちは。 質問タイトルが変かもしれません。。。 xmlから受け取ったデータをphpで表示してます。 ・・・xmlデータの受取(?)は他社にお願いしており、私はphpでの表示のみなのでデータそのものは分かりません。 [aaaaa][bbbbb][ccccc][ddddd][depday] [aaaaa][bbbbb][ccccc][ddddd][cityname] [aaaaa][bbbbb][ccccc][ddddd][b][depday] [aaaaa][bbbbb][ccccc][ddddd][b][cityname] のように非常に長い連想配列があり、一番最後の[depday]と[cityname]は常に同じです。あまりにも長いので $hairetsu_1 = [aaaaa][bbbbb][ccccc][ddddd]; echo $hairetsu_1[depday]; echo $hairetsu_1[cityname]; $hairetsu_2 = [aaaaa][bbbbb][ccccc][ddddd][b]; echo $hairetsu_2[depday]; echo $hairetsu_2[cityname]; のように表示させる事は出来るのでしょうか? とんちんかんな質問だったらお許しください。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • formの情報を連想配列に

    お世話になります。 formのチェックボックスの情報を連想配列に格納したいのですが □東京 □神奈川 □千葉 □埼玉 □茨城 [ 送信 ] というフォームがあったとして 東京、神奈川、千葉の3つにチェックが入り送信されると この3つの値を格納するにはどうすればよいのでしょうか? 単純に、下のようにしたくて・・・ array_pushを使うのかなと思うのですが上手くいきません。 Array ( [0] => tokyo [1] => kanagawa [2] => chiba ) ご教授お願いします。

    • ベストアンサー
    • PHP
  • javascript 連想配列

    初めて連想配列で処理を行っております。いろいろグーグル等で調べましたが、どうしてもできないので、ご教授頂けますでしょうか。 phpからjavascriptにデータを渡し、連想配列化する必要がありまして、以下の通りにやってみました。配列化は自動化したく、for文でこのようにしてみました。phpの大部分は少々長いので省きますが、ざっとこんな感じです。 var place = <?PHP echo $place ?>; //東京、大阪、名古屋 var address = <?PHP echo $add ?>; //東京都、大阪府、名古屋市 var Data = new Array();   for(i=0;i<place.length;i++){ Data[i].push({add1:place[i] , add2:address[i]});   } alert(Data[0]); ------------------------------- 上記の方法ですと、placeとaddressには正しく値はphpから渡されるのですが、肝心なDataはなにも出力されません。エラーもなく、まっさらです。 理想系は、以下の方法の通りにしたいと思っております。 下記はフリーウェアの中身を今回の案件に手直ししたものです。 Data = [{  add1: "東京",  add2: "東京都" }, {  add1: "大阪",  add2: "大阪府" }, {  add1: "名古屋",  add2: "名古屋市" }]; この場合と同じ結果が出力されれば完成なのですが・・・ 例えば、Data[0]をalertすると、「object object」と出力されます。 現在は3件で開発を行っておりますが、今後はどんどん増えていくので、自動化させるためにfor文か、for in文を使ったほうがいいのかな と思っているのですが、力及ばず詰まっております。 どうかお助けください。 よろしくお願い致します。

  • フォームのPOSTデータをサブウィンドウに渡したいです。

    フォームのPOSTデータをサブウィンドウに渡したいです。 <form action="sample.html" method="post"> <input type="checkbox" name="test[]" value="0">0 <input type="checkbox" name="test[]" value="1">1 <input type="checkbox" name="test[]" value="2">2 <input type="checkbox" name="test[]" value="3">3 <input type="checkbox" name="test[]" value="4">4 </form> 上記のフォームの値を、サブミットボタンを押したときにサブウィンドウをひらき、そのサブウィンドウに渡したいのですが、いまいち上手くいきません。 window.openでサブウィンドウを開いてもデータが受け渡せずにいます。 このような場合、どうしたら値を渡せるのでしょうか。 理想はPOSTで渡したいのですが、引数で渡す方法でもかまいません。

  • $_POSTを連想配列で取得したい!!

    こんにちは。 HTMLの入力フォームからPHPでデータを取得したいのですが、項目(50項目位)が多い為に配列を使ってデータを取得したいと考えています。 どうやっていいのか迷っているのですが、おそらく連想配列を使えばいいのだとは思うのですが、取得の仕方がわかりません・・・すみませんが、ご教授頂けないでしょうか? 後、必須項目が何点かあるのですが、その必須項目で記入漏れがあるものを全てエラーで出したいと思います。 例えばA,B,C,Dの必須項目があり、Aにだけ記入されていたら【BCDは必須項目です】とBCだけ記入されていたら【ADは必須項目です】と画面に表示される。 これも配列を使えばどうにかなると思うのですが、ぜんぜんプログラムがわかりません・・・。 質問が2つになり申し訳ございませんが、ご教授をよろしくお願いします。

    • ベストアンサー
    • PHP
  • フォームを使ってURLに次々と書き込みをしたい

    フォームを使ってURLに次々とチェックした項目を追加していきたいのですがわかりません。 なにか良い方法はありませんか? 以下の例はHTMLを表示したいと考えて作りましたが実際は検索する項目を追加して絞込みに行いたいと思っています。 たとえば↓のような感じで行いたいです。 <form id="form" name="form" method="GET" action="http://www.○○○.ne.jp/"> <input name="24/" type="checkbox"/> 24ページへ <input name="25/" type="checkbox"/> 25ページへ <input type="submit" /> </form> よろしくお願いします。

専門家に質問してみよう