我有一个脚本,可以搜索数据库并显示其出席情况由主管标记的用户列表。主管标记出勤情况并填写备注并提交表格。
我可以在 mysql 数据库中插入出勤信息,但备注栏没有更新。
请指导。
表单脚本
<td id="present">
<input type="radio" name="present[<? echo $rows['id']; ?>]" checked="checked" value="P">P
</td>
<td id="absent">
<input type="radio" name="present[<? echo $rows['id']; ?>]" value="A">A
</td>
<td id="tour">
<input type="radio" name="present[<? echo $rows['id']; ?>]" value="T">T
</td>
<td id="leave">
<input type="radio" name="present[<? echo $rows['id']; ?>]" value="L">L
</td>
</td>
<td id="hpl">
<input type="radio" name="present[<? echo $rows['id']; ?>]" value="H">H
</td>
<td width="30%" id="remark">
<input type="text" name="remark[]" />
</td>
</tr>
<?php }?>
<?php }?>
<tr>
<td colspan="7" style="vertical-align:middle; text-align: center;"><br><br>
<input id="Submit" type="submit" name="Submit" value="Mark Attendance" style="text- align: center; background-color: #000000; color: #ffffff; border: 1px #000000 solid;">
</td>
和mysql更新脚本</p>
foreach($_POST['present'] as $id => $value)
{
$getSets = mysql_query("SELECT * FROM users WHERE id='".$id."'");
$ausers = mysql_fetch_array($getSets);
$class=$ausers['user'];
$section=$ausers['email'];
$branch=$ausers['branch'];
$date1=$_POST['date'];
$date = date("Y-m-d", strtotime($date1));
$sql = "INSERT INTO statistics(user, wquestions, date, att, marker, branch, remark) VALUES ('$class', '$section', '$date', '".$value."','".USERNAME."', '$branch', '".$remark."') ";
$result = mysql_query($sql);
最佳答案
据我所知,您的脚本不处理来自 $_POST['remark']
的数据。您仅处理 POST 的 $_POST['present']
部分。请记住,每个输入的名称在发送时直接对应于 POST 的数组索引。
为了更轻松地可视化您发布的内容以及数据的发送方式,您可以执行以下操作:
echo '<pre>';
print_r($_POST);
echo '</pre>';
根据您的代码,“备注”是一个数组。名称 [ ]
中的括号您需要类似:
foreach ($_POST['remark'] as $k => $r) {
// Insert the remark data
}
否则,如果只有 1 个评论,则应将其重命名为“remark”,不带 [ ]
。
关于php - 更新两个 mysql 列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19738853/