0

オプションa、dがチェックボックスでチェックされているかどうかを確認したかったのですが、複数のオプションを使用すると機能しません。単一のオプションで正常に機能します。ここに私のhtmlがあります

<input type="checkbox" id="a" name="a" value="a" />aaa
<input type="checkbox" id="a" name="a" value="b" />bbb
<input type="checkbox" id="a" name="a" value="c" />ccc
<input type="checkbox" id="a" name="a" value="d" />ddd

ここに私のPHP if条件があります

if (($n == 1) && ($ans != ($_POST['a'] == 'a' && 'd' )))  
    {
        $result = "Wrong";
    }

誰か助けてください....

4

2 に答える 2

0

単に使用するif(in_array(a,b,c))

于 2013-10-26T18:05:21.750 に答える
0

4 つの入力に単一の名前を使用しているため、配列を操作しているため、次のように変更aする必要があります。a[]

<input type="checkbox" id="a" name="a[]" value="a" />aaa
<input type="checkbox" id="a" name="a[]" value="b" />bbb
<input type="checkbox" id="a" name="a[]" value="c" />ccc
<input type="checkbox" id="a" name="a[]" value="d" />ddd

そしてあなたのphpコードで:

$arr = array('a', 'd');
if(count(array_intersect($arr, $_POST['a'])) == count($arr)) // if 'a' and 'd' are in the $_POST['a'] array
{
 // do some stuff here
}
于 2013-10-26T18:25:18.227 に答える