$query = mysql_query("SELECT M.msg_id, M.uid_fk, M.message, M.created, U.full_name, U.profile_pic, U.username, U.uid FROM t_haps_wall M, t_users U, t_join_user F WHERE
M.uid_fk=U.uid AND F.uid=U.uid AND M.uid_fk = F.uid AND F.status='joining' order by M.msg_id desc ") or die(mysql_error());
这是我的 SELECT 代码,用于显示一些消息,现在我想添加 1 个条件:
AND M.uid_fk='$uid'
那么我可以将其放在完整的代码中。
我已经尝试过但没有效果。或者代码丢失/错误?
请帮忙。
谢谢
最佳答案
您应该将其放在 WHERE
子句中,并使用 ANSI SQL-92,如下所示:
SELECT
M.msg_id,
M.uid_fk,
M.message,
M.created,
U.full_name,
U.profile_pic,
U.username,
U.uid
FROM t_haps_wall M
INNER JOIN t_users U ON M.uid_fk = U.uid
INNER JOIN t_join_user F ON F.uid = U.uid
WHERE F.status = 'joining'
AND M.uid_fk ='$uid' -- your condition here
order by M.msg_id desc
请注意:这样的代码很容易受到 SQL injection 的攻击。 ,请改用 PDO 或准备好的语句。请参阅此了解更多详细信息:
关于PHP SELECT 带条件查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13489471/