以下代码无法修改信息,好像是ID获取不到还是获取不对造成无法修改
不吃玉米糖
不吃玉米糖 2017-10-06 21:22:23
[PHP讨论组]

edit.php 文件代码如下:

<?php
include("./config/conn.php");//内容是连接数据库相关
$id = $_GET['id'];
$pid = $_POST['pid'];
$name = $_POST['name'];
$dept = $_POST['dept'];
$phone = $_POST['phone'];
$tel = $_POST['tel'];
$time = date("Y-m-d H:i:s");
if($conn){
   $sql = "update txl set pid='$pid',name='$name',dept='$dept',phone='$phone',tel='$tel',cre_time='$time' where id='$id'";
   $que = mysqli_query($conn,$sql);
   if($que){
       echo "<script>alert('修改成功,返回');location.href='txl_list.php';</script>";
   }else{
       echo "<script>alert('修改失败');location.href='txl_list.php';</script>";
   }
}
?>

----------------------------------------------------------

以上代码中:

 $sql = "update txl set pid='$pid',name='$name',dept='$dept',phone='$phone',tel='$tel',cre_time='$time' where id='$id'";

把id='$id'"直接指定具体id值是能修改的,不知道为什么,感觉是获取id值出了问题

----------------------------------------------------------------------

修改页代码如下:

<html>

<head>
   <title></title>
   <link rel="stylesheet" type="text/css" href="./CSS/style.css">
</head>
<body>
<?php include("header.php");?>
<?php
include("./config/conn.php");
$id = $_GET['id'];
$sql = "select * from txl where id='$id'";
$que = mysqli_query($conn,$sql);
$rw = mysqli_fetch_assoc($que);
?>
<div class="div1">
   <form action="edit.php" method="post">
       <input type="hidden" name="id" value="<?php echo $rw['pid'];?>">
       <p>用户编号:<input type="text" name="pid" value="<?php echo $rw['pid'];?>"></p>
       <p>用户姓名:<input type="text" name="name" value="<?php echo  $rw['name'];?>"></p>
       <p>用户部门:<select id="dept" name="dept">
               <option value="<?php echo  $rw['dept'];?>"><?php echo  $rw['dept'];?></option>
                <option name="cwk">财务科</option>
               <option name="sjk">审计科</option>
                <option name="bwk">保卫科</option>                
           </select></p>
       <p>手机号码:<input type="text" name="phone"value="<?php echo  $rw['phone'];?>"></p>
       <p>办公电话:<input type="text" name="tel"value="<?php echo  $rw['tel'];?>"></p>
       <p><input type="submit" value="修改">&nbsp;&nbsp;<input type="reset" value="重置"></p>
   </form>
</div>
<?php include ("footer.html");?>
</body>
</html>


点击修改提示成功了,实际是没有对数据进行修改到的,请问各位大神是哪个地方出了问题了?

不吃玉米糖
不吃玉米糖

全部回复(2)
不吃玉米糖

找到问题所在了,在提交页面使用了POST提交 <form action="edit.php" method="post">

在接收页面也应该是POST模式,把$id = $_GET['id']; 改为$id = $_POST['id'];就可以了

Eli

你先在php文件中输出$_GET['id'],看能不能获取到值,或者是看你的参数名写对没有

  • 回复 能正确获取到ID编号的,
    不吃玉米糖 作者 2017-10-07 20:39:22
  • 回复 http://localhost/test/TongXunLu/txl_edit.php?id=1 点击 修改按钮能正常获取到的ID值
    不吃玉米糖 作者 2017-10-07 20:41:26
  • 回复 你把sql语句的单、双引号互换一下试试,像这样: $sql = 'update txl set pid="$pid",name="$name",dept="$dept",phone="$phone",tel="$tel",cre_time="$time" where id="$id"';
    Eli 作者 2017-10-08 08:58:12
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号