如何将复选框值存储为1并在mysql中取消选中为0

时间:2016-09-29 07:13:27

标签: php jquery mysql mysqli

如何将复选框值ckecked为1并在mysql中取消选中为0 我的表格是:

 <input type="checkbox" name="skill['+skillcount+'][gdskill]">
 <input type="checkbox" name="skill['+skillcount+'][piskill]">

我的控制器页面:

foreach($_POST["skill"] as $k=>$key)
{
$conn->query("INSERT INTO r_job_skill
(id_job,title,weightage,type,gdskill,piskill) values
 ('".$jobId."',
  '".$key["title"]."',
  '".$key["weightage"]."',
  '".$key["type"]."',
  '".$key["gdskill"]."',
  '".$key["piskill"]."')
 ");
}

1 个答案:

答案 0 :(得分:1)

您可以在插入Mysql DB时进行检查。

isset() - 确定变量是否设置且不是NULL

如果使用unset()取消设置变量,则不再设置该变量。如果测试已设置为NULL的变量,则isset()将返回FALSE。另请注意,空字符(“\ 0”)不等于PHP NULL常量。

如果提供了多个参数,则只有在设置了所有参数后,isset()才会返回TRUE。评估从左到右进行,一旦遇到未设置的变量就停止。

if(isset($_POST['skill'])) { // where skill is the check box name
   // Here it executes for not checked
   $cval = '0';
} else {
   // Here it executes for checked
   $cval = '1';
}

之后,您可以将$cval插入查询中以便执行。

另一种方法:

if(!isset($_POST['skill'])) { // where skill is the check box name
   $cval = '1';  
} else {
   $cval = '0';
}