私は野球のクイズをしています。質問の1つに複数の回答があるので、チェックボックスを使用する必要があります。質問は無関係ですが、ここで私はコードを持っているものです。チェックボックスが正しく値を取得しない
<input type="checkbox" name="Player 1" value="Player 1" />Player 1
<input type="checkbox" name="Player 2" value="Player 2" />Player 2
<input type="checkbox" name="Player 3" value="Player 3" />Player 3
<input type="checkbox" name="Player 4" value="Player 4" />Player 4
<input type="checkbox" name="Player 5" value="Player 5" />Player 5
<input type="checkbox" name="Player 6" value="Player 6" />Player 6
は、のが正しい答えはプレーヤー2、3であり、ここでは6は私がやっているものですとしましょう:
if(isset($_POST['Player 2']) && isset($_POST['Player 3']) && isset($_POST['Player 6'])) { // Check if 2, 3, and 6 are checked
print "<p>Your answer is correct!</p>";
$correct++;
} else {
print "<p>Your answer is incorrect.</p>";
}
私は選択されたプレイヤー2、3、6が正しい答えであることをテストしようとしましたが、私のプログラムはまだ私の答えが間違っていると言っていました。私は値が正しく格納されているかどうかを確認するデバッグ文を入れてみましたが、そうではありません。例えば、私が言うとしようとしたとき:
if(isset($_POST['Player 2'])) {
$p2 = $_POST['Player 2'];
}
.....
print "<p>The answer is " . $p2 . ".</p>";
それは文字列 "答えがあります。"それは価値を全く得ていないことを意味します。これをどうすれば解決できますか?
$ _POSTにvar_dumpを実行します。フォームはPOST経由で提出されていますか? – j08691
'Player_1'または' Player1'を使用 – fusion3k
私はそれがPOST経由で提出されていると思います。どのようにしたらチェックできますか?私は 'var_dump'をどこに置くのですか? 'process_form()'関数の始めに? – GenericUser01