php 怎么按照指定ID修改数据库内数据

时间:2022-08-23 07:26:53
php 怎么按照指定ID修改数据库内数据
 <?php                                                  
$query = mysql_query('SELECT * FROM wdksm ');
while($row = mysql_fetch_assoc($query))
{{
$id=$row['id'];            
echo '日期:'.$row["time"].'&nbsp;&nbsp;';
echo '部门:'.$row["bumen"].'&nbsp;&nbsp;';
echo '姓名:'.$row["name"].'&nbsp;&nbsp;';
echo ' 职务:'.$row["zhiwu"].'<br />';
echo '未打卡时间:'.$row["wdktime"].'<br />';
echo '未打卡原因:'.$row["wdkyy"].'<br />';
echo '部门责任人审核:'.$row["bmshtime"].'&nbsp;&nbsp;';
echo '人事行政部/总经理审批:'.$row["rsshtime"].'<br />';
}
echo '<form name="bc" method="post" action=""> ';
echo '<input id="test" name="test" type="text" value="审核" />';
echo '<input type="submit" value="审核"/>'; 
echo '</form>';
echo '<hr /><br />';
}
$sql='UPDATE wdksm SET 
rsshtime = \'' . $_POST['test']  . '\'
WHERE id = \'' .$id . '\' ';
mysql_query($sql);

?>
php 怎么按照指定ID修改数据库内数据

8 个解决方案

#1


ID是数字不用加 ' ' ?

#2


你的update语句执行不了嘛?看上去没什么问题

#3



update 你的表名 set 要更改的列名 = 要更改的值 where id = 你指定的ID号

#4


我要是按照上面列的几条数据,点每条数据下面的审核,会将数据“审核”写入当前那条数据,现在写入的数据都默认写到最下面的那条数据里面去了

#5


你的表单是这样产生的
echo '<form name="bc" method="post" action=""> ';
echo '<input id="test" name="test" type="text" value="审核" />';
echo '<input type="submit" value="审核"/>'; 
echo '</form>';
里面并没有 id 的值
所以提交的数据不包含唯一识别 id

而你 sql 指令中的 id 是产生列表时的最后一个 id,当然就不对啦

另外你的 sql 指令的书写也很怪异
这样写比较好
$sql = "UPDATE wdksm SET rsshtime = '$_POST[test]' WHERE id = '$_POST[id]'";

#6


$sql = "UPDATE wdksm SET rsshtime = '$_POST[test]' WHERE id = '$_POST[id]'";
这个代码放进去连写入都写不了,我需要怎么选择一个id,并且把数据写入这个id里面,不影响其他id的数据

#7


while($row = mysql_fetch_assoc($query))
{
$id=$row['id'];            
echo '日期:'.$row["time"].'&nbsp;&nbsp;';
echo '部门:'.$row["bumen"].'&nbsp;&nbsp;';
echo '姓名:'.$row["name"].'&nbsp;&nbsp;';
echo ' 职务:'.$row["zhiwu"].'<br />';
echo '未打卡时间:'.$row["wdktime"].'<br />';
echo '未打卡原因:'.$row["wdkyy"].'<br />';
echo '部门责任人审核:'.$row["bmshtime"].'&nbsp;&nbsp;';
echo '人事行政部/总经理审批:'.$row["rsshtime"].'<br />';
echo '<form name="bc" method="post" action=""> ';
echo '<input id="test" name="test" type="text" value="审核" />';
echo '<input type="hidden" name="id" value="'.$id.'">';
echo '<input type="submit" value="审核"/>'; 
echo '</form>';
echo '<hr /><br />';
}

#8


引用 7 楼 fdipzone 的回复:
while($row = mysql_fetch_assoc($query))
{
$id=$row['id'];            
echo '日期:'.$row["time"].'&nbsp;&nbsp;';
echo '部门:'.$row["bumen"].'&nbsp;&nbsp;';
echo '姓名:'.$row["name"].'&nbsp;&nbsp;';
echo ' 职务:'.$row["zhiwu"].'<br />';
echo '未打卡时间:'.$row["wdktime"].'<br />';
echo '未打卡原因:'.$row["wdkyy"].'<br />';
echo '部门责任人审核:'.$row["bmshtime"].'&nbsp;&nbsp;';
echo '人事行政部/总经理审批:'.$row["rsshtime"].'<br />';
echo '<form name="bc" method="post" action=""> ';
echo '<input id="test" name="test" type="text" value="审核" />';
echo '<input type="hidden" name="id" value="'.$id.'">';
echo '<input type="submit" value="审核"/>'; 
echo '</form>';
echo '<hr /><br />';
}
楼上那位大哥,按照你那行代码加进去也不行啊

#1


ID是数字不用加 ' ' ?

#2


你的update语句执行不了嘛?看上去没什么问题

#3



update 你的表名 set 要更改的列名 = 要更改的值 where id = 你指定的ID号

#4


我要是按照上面列的几条数据,点每条数据下面的审核,会将数据“审核”写入当前那条数据,现在写入的数据都默认写到最下面的那条数据里面去了

#5


你的表单是这样产生的
echo '<form name="bc" method="post" action=""> ';
echo '<input id="test" name="test" type="text" value="审核" />';
echo '<input type="submit" value="审核"/>'; 
echo '</form>';
里面并没有 id 的值
所以提交的数据不包含唯一识别 id

而你 sql 指令中的 id 是产生列表时的最后一个 id,当然就不对啦

另外你的 sql 指令的书写也很怪异
这样写比较好
$sql = "UPDATE wdksm SET rsshtime = '$_POST[test]' WHERE id = '$_POST[id]'";

#6


$sql = "UPDATE wdksm SET rsshtime = '$_POST[test]' WHERE id = '$_POST[id]'";
这个代码放进去连写入都写不了,我需要怎么选择一个id,并且把数据写入这个id里面,不影响其他id的数据

#7


while($row = mysql_fetch_assoc($query))
{
$id=$row['id'];            
echo '日期:'.$row["time"].'&nbsp;&nbsp;';
echo '部门:'.$row["bumen"].'&nbsp;&nbsp;';
echo '姓名:'.$row["name"].'&nbsp;&nbsp;';
echo ' 职务:'.$row["zhiwu"].'<br />';
echo '未打卡时间:'.$row["wdktime"].'<br />';
echo '未打卡原因:'.$row["wdkyy"].'<br />';
echo '部门责任人审核:'.$row["bmshtime"].'&nbsp;&nbsp;';
echo '人事行政部/总经理审批:'.$row["rsshtime"].'<br />';
echo '<form name="bc" method="post" action=""> ';
echo '<input id="test" name="test" type="text" value="审核" />';
echo '<input type="hidden" name="id" value="'.$id.'">';
echo '<input type="submit" value="审核"/>'; 
echo '</form>';
echo '<hr /><br />';
}

#8


引用 7 楼 fdipzone 的回复:
while($row = mysql_fetch_assoc($query))
{
$id=$row['id'];            
echo '日期:'.$row["time"].'&nbsp;&nbsp;';
echo '部门:'.$row["bumen"].'&nbsp;&nbsp;';
echo '姓名:'.$row["name"].'&nbsp;&nbsp;';
echo ' 职务:'.$row["zhiwu"].'<br />';
echo '未打卡时间:'.$row["wdktime"].'<br />';
echo '未打卡原因:'.$row["wdkyy"].'<br />';
echo '部门责任人审核:'.$row["bmshtime"].'&nbsp;&nbsp;';
echo '人事行政部/总经理审批:'.$row["rsshtime"].'<br />';
echo '<form name="bc" method="post" action=""> ';
echo '<input id="test" name="test" type="text" value="审核" />';
echo '<input type="hidden" name="id" value="'.$id.'">';
echo '<input type="submit" value="审核"/>'; 
echo '</form>';
echo '<hr /><br />';
}
楼上那位大哥,按照你那行代码加进去也不行啊