@blog.justoneplanet.info

日々勉強

PHPの基本-チェックボックスのデータを受け取る

■失敗例(HTML側)

ソース
<form action="test.php" method="post">
<ol>
<li><input type="checkbox" name="check" value="check1" /></li>
<li><input type="checkbox" name="check" value="check2" /></li>
<li><input type="checkbox" name="check" value="check3" /></li>
<li><input type="checkbox" name="check" value="check4" /></li>
<li><input type="checkbox" name="check" value="check5" /></li>
<li><input type="checkbox" name="check" value="check6" /></li>
<li><input type="checkbox" name="check" value="check7" /></li>
<li><input type="checkbox" name="check" value="check8" /></li>
<li><input type="checkbox" name="check" value="check9" /></li>
<li><input type="checkbox" name="check" value="check10" /></li>
</ol>
<input type="submit" value="submit" />
</form>
受信データ($_POST[‘check’]の中身)

たとえば6番目と10番目がチェックされていた場合は、「check10」のみ、1つのデータしか読み出せない。

■解決策(HTML側)

ソース
<form action="test.php" method="post">
<ol>
<li><input type="checkbox" name="check[]" value="check1" /></li>
<li><input type="checkbox" name="check[]" value="check2" /></li>
<li><input type="checkbox" name="check[]" value="check3" /></li>
<li><input type="checkbox" name="check[]" value="check4" /></li>
<li><input type="checkbox" name="check[]" value="check5" /></li>
<li><input type="checkbox" name="check[]" value="check6" /></li>
<li><input type="checkbox" name="check[]" value="check7" /></li>
<li><input type="checkbox" name="check[]" value="check8" /></li>
<li><input type="checkbox" name="check[]" value="check9" /></li>
<li><input type="checkbox" name="check[]" value="check10" /></li>
</ol>
<input type="submit" value="submit" />
</form>
理由

name属性値の末尾に[]の記述がない場合配列としてPHPが受け取れない

1件のコメント»

PHPでチェックボックスの状態を引き継ぐ

PHPで画面遷移する際、POSTやGETを介して、一連のチェックボックスの状態を保持する方法を紹介する。

RSS feed for comments on this post.TrackBack URL

Leave a comment