如何发布已选中和未选中的值

时间:2016-02-20 09:24:37

标签: php html codeigniter

我有三个复选框。我想发布这三个.Checked是一个,未选中是0.Table包含三列。我想插入1表示已检查,0表示未选中。

 <label class='checkbox'><input type='checkbox' name='check_1' class='example1' value='1' checked/>India</label>
 <label class='checkbox'><input type='checkbox' name='check_2' class='example1' value='1' class='termcls'checked />China</label>
 <label class='checkbox'><input type='checkbox' name='check_3' class='example1' value='1' checked/>America</label>  

如何做到这一点..

3 个答案:

答案 0 :(得分:1)

复选框不能那样工作。如果选中它们会发布它们的值,如果没有选中则不发布任何内容因此,在服务器上,只需检查您是否获得了复选框名称的值,并将逻辑基于此。与试图为此标准行为实现客户端备选方案相比,方式更容易,更安全。

就像1,2,3一样简单:

$check1Checked = isset($_POST['check_1']);
$check2Checked = isset($_POST['check_2']);
$check3Checked = isset($_POST['check_3']);

或者,如果你想要0和1,只需将这个布尔结果转换为int。

$check1Checked = (int)isset($_POST['check_1']);
$check2Checked = (int)isset($_POST['check_2']);
$check3Checked = (int)isset($_POST['check_3']);

请注意,在任何一种情况下,已发布复选框的实际值都无关紧要。

答案 1 :(得分:1)

$check1Checked = (isset($_POST['check_1']))?1:0;
$check2Checked = (isset($_POST['check_2']))?1:0;
$check3Checked = (isset($_POST['check_3']))?1:0;

答案 2 :(得分:0)

提交表单并以这种方式检查逻辑部分

if(@$_POST['check_1']=='1')
{
   echo "1st is checked";
}
else
{
   echo "1st not checked";
}
相关问题