複数のチェックボックスを備えたフォームがあり、それを配列に入れたいと思います。ここで提供されている例を参照してください:http ://www.kavoir.com/2009/01/php-checkbox-array-in-form-handling-multiple-checkbox-values-in-an-array.html
だから私はファイルを準備しました:
チェックボックス.php:
<form action="checkboxes2.php" method="post">
<input type="checkbox" name="tags[]" value="1" />1<br>
<input type="checkbox" name="tags[]" value="2" />2<br>
<input type="checkbox" name="tags[]" value="3" />3<br>
<input type="checkbox" name="tags[]" value="4" />4<br>
<input type="submit" value="Send" />
</form>
checkboxes2.php:
<?php
print_r($_POST["tags"]);
?>
非常に単純です...これらのテキストボックスの値のみを取得する必要があり、選択されているかどうかは取得しないでください。しかし、私はまだこのエラーを受け取ります:
Undefined index: tags in checkboxes2.php on line 2
ここで何を間違えたのか全くわかりません。上記のリンクの例を見て、すべてをまったく同じように実行しました(主に、送信ボタンの追加など、一部の部分のコピー/貼り付けと変更)が、例に示すような出力が得られません。少なくとも、これらの各チェックボックスの値を取得する必要がありますよね?
やりたいこと:チェックボックスの配列をチェックし、どのチェックボックスが選択されているかを確認して、次のように2番目の配列に「はい」または「いいえ」を追加します。
<?php
$number1 = $_POST["tags"];
$number2 = array();
foreach($number1 as $number1_output)
{
if(isset($number1_output))
{
$number2[] = "yes";
}
else
{
$number2[] = "no";
}
}
print_r($number2);
?>
まあ...それは半分しか機能しません。選択されたチェックボックスのみがアレイに追加されます。したがって、「3」と「4」を選択すると、次のようになります。
Array ( [0] => yes [1] => yes )
配列のチェックボックスを処理して検証するための最良の方法は何ですか?