mysql update 删除语法错误_MySQL UPDATE查询语法错误?

您没有在任何字符串文字周围加上引号。

UPDATE `users` SET

`about_me`=about_me,

`profile_pic`=,

`econ_views`=test econ,

`religious_views`=test rel,

`abortion_view`=test abortion,

`gay_marriage`=test gay marraige,

`other`=test other,

`political_party`=democrat

WHERE `username`=emoore24应该:

UPDATE `users` SET

`about_me`='about_me',

`profile_pic`=NULL,

`econ_views`='test econ',

`religious_views`='test rel',

`abortion_view`='test abortion',

`gay_marriage`='test gay marraige',

`other`='test other',

`political_party`='democrat'

WHERE `username`='emoore24'如果您将PDO与准备好的语句一起使用,那么它将更简单,更安全,您不必担心引用或转义文字。例如,以下是我编写该代码的方法:

$info = array(

'about_me' => NULL,

'profile_pic' => NULL,

'political_party' => NULL,

'econ_views' => NULL,

'religious_views' => NULL,

'abortion_view' => NULL,

'gay_marriage' => NULL,

'other' => NULL

);

$query = "UPDATE `users` SET

`about_me`=:about_me,

`profile_pic`=:profile_pic,

`econ_views`=:econ_views,

`religious_views`=:religious_views,

`abortion_view`=:abortion_view,

`gay_marriage`=:gay_marriage,

`other`=:other,

`political_party`=:political_party

WHERE `username`=:username";

if (($stmt = $pdo->prepare($query)) == FALSE) {

$err = $pdo->errorInfo(); die($err[2]);

}

$values = array_intersect_key($_POST, $info);

$values['username'] = 'emoore24';

if ($stmt->execute( $values ) == FALSE) {

$err = $stmt->errorInfo(); die($err[2]);

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值