我不确定我是否做对了,但我可以帮助我指出正确的方向。
基本上我有一张桌子叫ptb_stats
. 该表的布局如下所示:
user_id | user_postcode
1 m3 4
2 m3 4
3 kt1 3
4 sm2 7
我正在尝试生成一个 mysql 查询,该查询将显示所有具有匹配邮政编码的用户。因此,例如,如果user 1 / user_id 1
已登录,那么他们将看到user 2
谁与他们具有相同的邮政编码(以 m3 4 开头)
例如,这大致告诉用户,用户 1 和用户 2 彼此相距 5 英里。
我有一个有效的查询是这样的:
function get_local_users() {
global $connection;
$query = "
SELECT *
From ptb_stats, ptb_users
WHERE ptb_stats.user_id=ptb_users.id
AND ptb_stats.user_postcode='m3 4'
AND ptb_users.id!=".$_SESSION['user_id']."";
$local_set = mysql_query($query, $connection);
confirm_query($local_set);
return $local_set;
}
目前我必须手动将邮政编码输入到查询中才能正常工作。我的问题是我需要分配一个会话变量,我相信它会告诉查询将具有相同邮政编码的用户与登录的用户匹配。
目前我已将 $_SESSION['user_id'] 设置为变量,但之前有人设置了此变量,我正在尝试修复他们的所有工作,但无法与执行此操作的人取得联系。所以我不明白会话变量。我以为我可以将 $_SESSION['user_id'] 更改为 $_SESSION['user_postcode'] 并且它会起作用,但基本上我需要做的是如何让查询说:
如果登录用户user_postcode
是(无论值)并且他们是匹配的其他用户,user_postcodes
则显示这些。
有人可以告诉我我需要做什么才能让它工作。我真的很感激。谢谢你。