繁体   English   中英

“ where子句”中的未知列“ unknown”

[英]Unknown column 'unknown' in 'where clause'

当用户登录后,我试图找到他们的信息,以便可以向他们显示这些信息,然后允许他们更新他们的信息。

我一直收到一个未知的列错误,这是我的where子句中的会话变量,但是我不确定为什么。 下面的代码显示了我正在使用的查询。

$query="SELECT * FROM users WHERE username = ". $_SESSION['login_user'];

最好的方法是对SQL中的login使用带占位符的Prepared Statement ,并将其替换为Session中的值。

另一种非生产标准的方法是将登录值括在单引号中。 如果不带引号,则SQL引擎会认为登录名是列名。

如果您的列username是键入的字符串,则应添加'进行过滤,如下所示:

$query="SELECT * FROM users WHERE username = '". $_SESSION['login_user'] + "'";

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM