php - 更新查询显示成功,但未更新表中的数据
问题描述
我的以下查询显示“已成功更新员工记录”,但未在表中更新我的代码有什么问题
{
$eid=intval($_GET['uin']);
$uin=$_POST['uin'];
$fname=$_POST['firstName'];
$lname=$_POST['lastName'];
$email=$_POST['email'];
$department=$_POST['department'];
$recoffr=$_POST['recoffr'];
$mobileno=$_POST['mobileno'];
$sql="
update tblemployees
set FirstName = :fname
, LastName = :lname
, email = :email
, department = :department
, recoffr = :recoffr
, Phonenumber = :mobileno
where uin = :eid
";
$query = $dbh->prepare($sql);
$query->bindParam(':uin',$uin,PDO::PARAM_STR);
$query->bindParam(':fname',$fname,PDO::PARAM_STR);
$query->bindParam(':lname',$lname,PDO::PARAM_STR);
$query->bindParam(':email',$email,PDO::PARAM_STR);
$query->bindParam(':department',$department,PDO::PARAM_STR);
$query->bindParam(':recoffr',$recoffr,PDO::PARAM_STR);
$query->bindParam(':mobileno',$mobileno,PDO::PARAM_STR);
$query->execute();
$msg="Employee record updated Successfully";
}
解决方案
您在查询中的where之后的最后一个参数中存在问题。您在查询中使用eid参数,同时使用uin绑定参数。
更新您的这行代码。
$query->bindParam(':uin',$uin,PDO::PARAM_STR);
对此:
$query->bindParam(':eid',$uin,PDO::PARAM_STR);
此外,您没有在代码中的任何地方使用$eid变量。
推荐阅读
- r - 在 Shiny 中隔离反应性 data.frames 列表
- node.js - 拆分具有多个值的字段的值
- java - getRemoteSocketAddress 一起返回 url 和 ip 地址
- batch-file - 使用 Windows 帐户列表使用 SIDS 添加 reg 密钥
- javascript - 如何通过更改参数动态添加函数到 onclick 事件?
- python - 如何让这个运行“更快”?或者这是正确的术语?
- php - 未定义的索引:带有 $GLOBAL 变量的类型
- c# - 从 SQL 查询返回属性到类列表的问题
- audio - 为循环 wav 样本添加抗锯齿/带宽限制(非傅立叶变换)
- python-3.x - Python/Django 使用某种缓存在一段时间内记录错误