我已经搜索了很多,但没有找到任何解决方案。我想保存复选框中选择的SQL选项。如果用户选择了两个复选框,他们必须保存在MySQL中,用逗号分隔。
Kinly请帮我解决这个问题
<input name="patno" id="patno">
<input type="checkbox" name="newt[]" value="Diesel" id="type" />Diesel
<input type="checkbox" name="newt[]" value="Petrol" id="type" />Petrol
<input type="checkbox" name="newt[]" value="Electricity" id="type" />Electricity
PHP代码$order = "INSERT INTO tblsampo
(patno, stno, newt)
VALUES
('$smonth',
'$patno','$stno','$newt')";
$result = mysql_query($order); //order executes
if($result){
echo("<br>Input data is succeed");
} else{
echo("<br>Input data is fail");
}
?>
直接内爆$_POST['type']数组,如下....
$types = implode(",", $_POST['type']);
然后将$types变量插入到表中…
所以…
$types = implode(",", $_POST['type']);
if($types){
$order = "INSERT INTO tblsampo
(patno, stno, type)
VALUES
('$smonth',
'$patno','$stno','$types')";}
试试这个
$types = implode(',',$_POST['type']);
$sql = "INSERT INTO tblsampo
(patno, stno, type)
VALUES
('$smonth',
'$patno','$stno','$types')";
mysql_query($sql)
尝试以下操作:
$newt = false;
if (isset($_POST['newt']) && !empty($_POST['newt']) && is_array($_POST['newt'])){
$newt = implode(",", $_POST['newt']);
}
然后以同样的方式运行您的查询,但检查是否$myTypes不是false首先
if ($newt) {
//YOUR QUERY. TIP: use PDO or MySQLi instead of MySQL_* functions
}