チェックの内容を表示する
チェックボックスで複数選択が可能なものを作るときには、neme属性に[]記号をつけなければなりません。
こうすると、チェックボックスの値が「配列」としてPHPに渡されます。
チェックしてから「送信」をクリックしてください。
あなたの好きな果物:
ソース
<p>チェックしてから「送信」をクリックしてください。</p> <form method="post" action=""> <input type="checkbox" name="fruit[]" value="メロン">メロン <input type="checkbox" name="fruit[]" value="イチゴ">イチゴ <input type="checkbox" name="fruit[]" value="モモ">モモ <input type="submit" value="送信" name="btn"> </form> あなたの好きな果物:<br /> <?php //入力内容を表示する for ($i = 0; $i < count(@$_POST["fruit"]); $i++){ echo @$_POST["fruit"][$i]." "; } echo "</p>\n"; ?>
連想配列を使ってチェックボックスを表示する
連想配列は、文字を添え字として使う配列です。
【書式】
$変数名 = array ('キー1' => 値1, 'キー2' => 値2, ...);
連想配列はキーが数字ではないため複雑になるので、基本的にはforeachを使って取り出します。
【書式】
foreach (配列変数 as キー => 値){ 処理; }
サンプル
ソース
<form action="#" method="get"> <?php //連想配列にデータを入れる $items = array('果物1' =>'桃', '果物2' => 'メロン', '野菜1'=>'トマト','野菜2'=>'レタス'); //配列の内容を取り出す foreach($items as $itemKey => $itemValue){ print ('<input type="checkbox" id="'. $itemKey .'"value="' .$itemKey .'" /><label for="'. $itemKey . '"> '. $itemValue. '</label> '); } ?> </form>