我有一个带有复选框的表单,我将它以数组的形式传递给 PHP。然后我使用 Foreach 循环将表单中的数据插入 MySQL 数据库。正在输入数据,但它也在添加一个空白条目。我试图验证该值不为空,但我仍然无法让它不放入空白数据。
表格:
<form action="work.php" method="post">
<input type="checkbox" name="work[]" value="MOC" /> MOC<br />
<input type="checkbox" name="work[]" value="Spectrum" /> Spectrum<br />
<input type="checkbox" name="work[]" value="Calls" /> Calls<br />
<input type="checkbox" name="work[]" value="IPMon" /> IPMon<br />
<input type="checkbox" name="work[]" value="SEV 1/2" /> SEV 1/2<br />
<input type="checkbox" name="work[]" value="LBC" /> LBC<br />
<input type="checkbox" name="work[]" value="Email Queue" /> Email Queue<br />
<input type="checkbox" name="work[]" value="NOC Inbox" /> NOC Inbox<br />
<label>Special Projects:</label><input type="text" name="special" />
<input type="submit" name="submit" value="Submit" />
</form>
PHP:
if(ISSET($_POST['work'])){
foreach($_POST['work'] as $work){
$mysqli->query("INSERT INTO Working (wuid, task) VALUES ('".$username."', '".$work."')");
}
}
MySQL 数据:
wuid task id
tduran 37
tduran IPMon 36
tduran Calls 35
$username 变量是从 LDAP 身份验证中提取的,因此不会更改。问题出在 $work 上。我已经多次打印出数组和变量,但无法让它显示空白内容。一直在为此拉扯我的头发。希望
最佳答案
查看上述问题的描述,您已经为复选框元素定义了 HTML 数组。在服务器端,我们仅获取那些使用 $_POST['work '] 检查的复选框的值,这将是一个数组。
因此,要获取所有复选框的值,您需要选中所有复选框
您将通过 $_POST['work'] 获得选中复选框的结果数组值。
关于PHP Foreach 循环添加空白 MySQL 条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12574863/