【发布时间】:2013-04-09 18:42:23
【问题描述】:
我有两张桌子
1: USERS
user_id |
user_state |
user_email
2: CONTACTS
contact_id |
contact_name |
contact_state |
contact_email |
contact_info
我想要做的是让 select 回显“user_state”(即登录用户状态)等于contact_state 的所有“CONTACTS”数据。
"SELECT * FROM contacts
INNER JOIN users
ON contact_state = ".$row_userinfo['user_state']."
WHERE contact_state = ".$row_userinfo["user_state"]."
ORDER BY contact_name $limit");
?>
我遇到的问题是它不仅显示与登录用户状态(user_state)匹配的数据
使用上面的代码(我不确定它是否按我想要的方式工作是否正确)提出了“'where 子句'中的未知列'...'”
希望有人可以帮助我。
【问题讨论】:
-
检查
ON子句,你必须从数据库表中指定field name -
不要将参数直接传递给查询,这使得它容易受到 sql 注入。阅读手册here..