【发布时间】:2014-10-24 20:05:55
【问题描述】:
请检查一下
$user_id = (int)$_GET['user_id'];
$sql = 'DELETE FROM users WHERE user_id=:user_id';
$query = $db->prepare($sql);
$query->bindParam('user_id',$user_id,PDO::PARAM_STR);
$delete = $query->execute();
实际上它是正常工作的,它会从数据库中删除用户行
但这里的问题是我没有在绑定查询中写“:”那一列 我的意思是
这应该是错误的
$query->bindParam('user_id',$user_id,PDO::PARAM_STR);
这应该是正确的
$query->bindParam(':user_id',$user_id,PDO::PARAM_STR);
但它没有抛出任何异常并且正在成功删除用户行
对此有何解释?
【问题讨论】:
-
在查询中有 :user_id ..它应该是 $user_id $sql = 'DELETE FROM users WHERE user_id=$user_id';
-
mmmm 你对 bindparam 有什么想法吗?
-
谢谢哥们,如果你把它放在单独的答案中被接受:)