【发布时间】:2017-05-09 09:25:44
【问题描述】:
我很困惑,我认为这肯定会奏效。我想将多个复选框值(如果选中)插入到一个表的不同列中。我试图用一个 for 循环来做到这一点,并保持命名约定一致,这样我就可以将 for 循环与复选框数组一起使用。这是php代码:
$connection = new mysqli("localhost","root","","employee_db");
if(isset($_POST['check'])){
$check = $_POST['check'];
if($check){
print_r($check);
}else{
echo "nothing checked";
}
for($i=0;$i<sizeof($check);$i++){
$query = "INSERT INTO `checklist_test` (`$check[$i]`) VALUE (`\"$check[$i]\"`)";
$result = mysqli_query($connection,$query);
if(!$result){
die("NOPE <br>" . mysqli_error($connection));
}else{
echo "yup";
}
}
}
这里是 HTML
<form action="" method="post>
<input type="checkbox" name="check[]" value="check1">Check1
<input type="checkbox" name="check[]" value="check2">Check2
<input type="checkbox" name="check[]" value="check3">Check3
<input type="submit" value="submit">
</form>
MySQL 列是“id, check1, check2, check3”,所以 SQL 应该如下所示:
INSERT INTO `checklist_test` (`id`, `check1`, `check2`, `check3`)
VALUES (NULL, 'test', 'test', 'test');
P.O.V. 之外的欣赏者我需要感谢!
【问题讨论】: