チェックの内容を表示する
チェックボックスで複数選択が可能なものを作るときには、neme属性に[]記号をつけなければなりません。
こうすると、チェックボックスの値が「配列」としてPHPに渡されます。
チェックしてから「送信」をクリックしてください。
あなたの好きな果物:
\n”;
?>
ソース
<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>