2009-08-18 94 views
1

我试图更新字段其中username = $用户名更新与MySQL的where子句

UPDATE userinfo SET password = $newpass WHERE username = $username 

不过,我得到错误“#1054 - 在“where子句中未知列‘鲍勃’ '',我用bob代替$username

任何想法如何正确地写这个?

回答

4

啊哈!您的评论后,很明显,你不包装在引号的文本:

UPDATE userinfo SET password = $newpass WHERE username = '$username' 

由于$username是文本值,你需要把它周围的单引号,这样SQL解析它作为文本,而不是作为一个列。

+0

得到这个错误“#1054 - 'where子句'中的未知列'bob'”当我用bob替换$ username – mrpatg 2009-08-18 05:55:27

+1

尝试用'bob'替换它(带引号) – 2009-08-18 06:02:27

+0

现在很好用,谢谢!其慷慨的人像你一样帮助人们学习,为此我非常感激。 – mrpatg 2009-08-18 06:04:16