php 怎么按照指定ID修改数据库内数据
<?php
$query = mysql_query('SELECT * FROM wdksm ');
while($row = mysql_fetch_assoc($query))
{{
$id=$row['id'];
echo '日期:'.$row["time"].' ';
echo '部门:'.$row["bumen"].' ';
echo '姓名:'.$row["name"].' ';
echo ' 职务:'.$row["zhiwu"].'
';
echo '未打卡时间:'.$row["wdktime"].'
';
echo '未打卡原因:'.$row["wdkyy"].'
';
echo '部门责任人审核:'.$row["bmshtime"].' ';
echo '人事行政部/总经理审批:'.$row["rsshtime"].'
';
}
echo '
echo '
';
}
$sql='UPDATE wdksm SET
rsshtime = \'' . $_POST['test'] . '\'
WHERE id = \'' .$id . '\' ';
mysql_query($sql);
?>
回复讨论(解决方案)
ID是数字不用加 ' ' ?
你的update语句执行不了嘛?看上去没什么问题
update 你的表名 set 要更改的列名 = 要更改的值 where id = 你指定的ID号
我要是按照上面列的几条数据,点每条数据下面的审核,会将数据“审核”写入当前那条数据,现在写入的数据都默认写到最下面的那条数据里面去了
你的表单是这样产生的
echo '';里面并没有 id 的值
所以提交的数据不包含唯一识别 id
而你 sql 指令中的 id 是产生列表时的最后一个 id,当然就不对啦
另外你的 sql 指令的书写也很怪异
这样写比较好
$sql = "UPDATE wdksm SET rsshtime = '$_POST[test]' WHERE id = '$_POST[id]'";
$sql = "UPDATE wdksm SET rsshtime = '$_POST[test]' WHERE id = '$_POST[id]'";这个代码放进去连写入都写不了,我需要怎么选择一个id,并且把数据写入这个id里面,不影响其他id的数据
while($row = mysql_fetch_assoc($query))
{
$id=$row['id'];
echo '日期:'.$row["time"].' ';
echo '部门:'.$row["bumen"].' ';
echo '姓名:'.$row["name"].' ';
echo ' 职务:'.$row["zhiwu"].'
';
echo '未打卡时间:'.$row["wdktime"].'
';
echo '未打卡原因:'.$row["wdkyy"].'
';
echo '部门责任人审核:'.$row["bmshtime"].' ';
echo '人事行政部/总经理审批:'.$row["rsshtime"].'
';
echo '
echo '
';
}
while($row = mysql_fetch_assoc($query))
{
$id=$row['id'];
echo '日期:'.$row["time"].' ';
echo '部门:'.$row["bumen"].' ';
echo '姓名:'.$row["name"].' ';
echo ' 职务:'.$row["zhiwu"].'
';
echo '未打卡时间:'.$row["wdktime"].'
';
echo '未打卡原因:'.$row["wdkyy"].'
';
echo '部门责任人审核:'.$row["bmshtime"].' ';
echo '人事行政部/总经理审批:'.$row["rsshtime"].'
';
echo '
echo '
';
} 楼上那位大哥,按照你那行代码加进去也不行啊