PHP无法识别复选框输入数组

时间:2018-04-13 06:17:49

标签: php html arrays forms

我的表单中包含以下复选框:

<input type='checkbox' name='yourgame[]' value='soccer' /> Soccer<br>
<input type='checkbox' name='yourgame[]' value='tennis' /> Tennis<br>
<input type='checkbox' name='yourgame[]' value='basketball' /> Basketball<br>

在php脚本中,我们得到值:

$yourgame = $_POST['yourgame'];

还有验证:

if (empty($yourgame))
echo "Tick at least one Game.";

我们不断收到错误消息“至少勾选一个游戏”。尽管勾选了几个盒子。似乎$ yourgame []数组无法识别。

我也试过$yourgame = (array)$_POST['yourgame'];没有成功。

2 个答案:

答案 0 :(得分:0)

试试这个

if (isset($_POST['submit'])) {
    $checkedCandidates = 0;
    $values = $_POST['yourgame'];
    $checkedCandidates = count($values);

    if ($checkedCandidates < 1) {
        echo 'Tick at least one Game.';
    } else {
        echo 'Checked';
    }
}

答案 1 :(得分:0)

试试这个。

<form method="post">
<input type='checkbox' name='yourgame[]' value='soccer' /> Soccer<br>
<input type='checkbox' name='yourgame[]' value='tennis' /> Tennis<br> 
<input type='checkbox' name='yourgame[]' value='basketball' /> 
 Basketball<br>
<input type="submit" name="btnsave" value="Submit" />
</form>
<?php
if(isset($_POST['btnsave'])){

$chk=isset($_POST['yourgame'])?$_POST['yourgame']:"";
if(!empty($chk)){

    print_r($chk);

}
else{

    echo 'Ops! select at least one value';
  }

  }
   ?>