php修改公告,每次修改一条,所有记录都会变,高手看下什么问题
答案:4 悬赏:50 手机版
解决时间 2021-02-18 05:03
- 提问者网友:骑士
- 2021-02-17 20:13
代码如下:<br>处理部分:<br><?php<br>$title = $_POST['title'];<br>$content= $_POST['content'];<br>$time = $_POST['time'];<br>$id = $_POST['id'];<br>if(isset($_POST["submit"]))<br>{<br><br>if($title!="" && $content!="" ){<br>$sql= "update affiche set title='$title'";<br>$result = mysql_query($sql,$conn); <br>}<br> if ($result){<br> echo "<script>alert('修改成功');location.href='Admin_AddAffiche.php';</script>";<br> } <br>else{<br>echo "<script>alert('注册失败,请重新填入!');history.go(-1);</script>";<br>} <br>mysql_close($conn); //关闭数据集 <br>}<br><br>?><br>URL传递部分:<br><?php<br>include("../conn.php"); <br> $eee= $_GET['id'];<br> $sql="select * from affiche where title='$eee'";<br> $query=mysql_query($sql,$conn);<br> $rs=mysql_fetch_array($query); <br><br>?><br>数据传递部分:<br><?php include '../conn.php';<br>$q = "SELECt * FROM affiche"; //查询读取数据库表的语句然后赋值给变量$q<br>$rs = mysql_query($q,$conn); //此函数为连接数据库的一个连接方法。<br><br>while($row = mysql_fetch_row($rs)) <br>{<br>?><br> <tr bgcolor="#ECF5FF"><br> <td height="20" bgcolor="#ECF5FF"><table width="100%" height="25" border="1" cellpadding="0" cellspacing="0" bordercolor="#A4B6D7"><br> <tr><br> <td width="50" align="center"><?php echo $row[0];?></td><br> <td align="center"><?php echo $row[3];?></td><br> </tr><br> </table></td><br> <td><div align="center"><?php echo $row[5];?></div></td><br><br><td><div align="center"><a href="<?php echo "Admin_editAffiche.php?id=".$row[3];?>">修改</a></div></td><br> <td><div align="center"><a href="<?php echo "dodel.php?id=".$row[0];?>">删除</a></div></td><br> </tr><br><?php<br> }<br>?><br>谢谢大家了,在系统里修改是可以的,但网站后台不行,真怪,我重写吧
最佳答案
- 五星知识达人网友:空山清雨
- 2021-02-17 21:39
1、你传递的是ID,但是在数据库查找的时候是title<br>2、在你保存的时候没有选择修改哪条记录,默认是修改所有的<br>下边是我帮你修改过的<br><?php<br>$title = $_POST['title'];<br>$content= $_POST['content'];<br>$time = $_POST['time'];<br>$id = $_POST['id'];<br>if(isset($_POST["submit"]))<br>{<br><br>if($title!="" && $content!="" ){<br>$sql= "update affiche set title='$title',content='$content' where id=$id"; '保存内容和标题,条件是传入的ID值<br>$result = mysql_query($sql,$conn); <br>}<br> if ($result){<br> echo "<script>alert('修改成功');location.href='Admin_AddAffiche.php';</script>";<br> } <br>else{<br>echo "<script>alert('注册失败,请重新填入!');history.go(-1);</script>";<br>} <br>mysql_close($conn); //关闭数据集 <br>}<br><br>?><br>URL传递部分:<br><?php<br>include("../conn.php"); <br> $eee= $_GET['id']; ‘这里传入的是ID<br> $sql="select * from affiche where id='$eee'"; ’这里查找也应该是ID<br> $query=mysql_query($sql,$conn);<br> $rs=mysql_fetch_array($query); <br><br>?>
全部回答
- 1楼网友:患得患失的劫
- 2021-02-17 23:37
update 语句需要加个where 条件吧
- 2楼网友:白昼之月
- 2021-02-17 22:44
你update的时候,选择条件都没加,当然是更新全表记录了,好歹有个where id=$id
- 3楼网友:蓝房子
- 2021-02-17 22:34
$sql= "update affiche set title='$title'";这句我看不明白了,
$sql= "update affiche set title='$title' where `字段名`=“某值”;
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯