【发布时间】:2012-09-21 11:44:20
【问题描述】:
我有 4 个复选框,假设我只选中其中两个,即 user1 和 user3
<input type="checkbox" name="usersp[]" value="1" checked="checked" />User1 <br>
<input type="checkbox" name="usersp[]" value="2"/>User2 <br>
<input type="checkbox" name="usersp[]" value="3" checked="checked" />User3 <br>
<input type="checkbox" name="usersp[]" value="4"/>User4 <br>
我的数据库中有两个字段(“User_id”、“Selected”),下面是我的插入代码
foreach($_POST['usersp'] as $user_id) {
$sql = "INSERT INTO sel_users(`User_id`,`Selected`) VALUES('$user_id','')";
$result = mysql_query($sql);
}
我的问题是如何在“已选择”字段中插入选中的用户作为 1 的值和其他作为 0 的值?
【问题讨论】:
-
如果您的表 sel_users 仅适用于选定用户,为什么需要插入尚未选定的用户?当然,只插入选定的用户是最好的做法吗?
-
用
<input type="hidden" name="usersp[1]" value="0" /><input type="checkbox" name="usersp[1]" value="1" />代替<input type="checkbox" name="usersp[]" value="1" />。 -
问题是当我使用我的更新查询时,假设我更新这些复选框并取消选中用户1,用户3并检查用户2和用户4,那么我将如何进行更新查询,因为它也会更新并插入同一时间。
-
@DCoder 实际上我正在从数据库中获取所有这些用户,但我正在尝试 for 循环。
-
这不会改变逻辑 - 为每个用户 ID 生成一对输入,使用该 ID 作为输入名称中的索引...