我正在尝试向登录的用户显示居住在本地的用户列表。因此,如果登录的会话用户的邮政编码为“m3 4”,而其他 5 个用户的邮政编码以“m3 4”开头,那么这些用户将显示给用户。
我的桌子是这样布置的:
id | user_id | user_postcode
1 2 M3 4
2 3 SM2 7
3 4 M3 4
因此在这种情况下,用户 2 将显示给已登录的用户 4,因为他们的邮政编码匹配。
我正在尝试在 mysql 中执行此操作,并且当我手动输入邮政编码时它可以工作,如下所示:
AND ptb_stats.user_postcode='M3 4'
但我试图使其特定于用户会话,因此如果登录用户 / $_SESSION[user_id'] 与其他用户具有相同的邮政编码。
我正在尝试这样做,但它显示所有没有邮政编码的用户。
function get_local_users() {
global $connection;
global $_SESSION;
$query = "
SELECT *
From ptb_stats, ptb_users
WHERE ptb_stats.user_id=ptb_users.id
AND ptb_stats.user_postcode='".$_SESSION['user_postcode']."'";
$local_set = mysql_query($query, $connection);
confirm_query($local_set);
return $local_set;
}
我认为它这样做是因为 ".$_SESSION['user_postcode'] 没有设置,我没有设置 ".$_SESSION['user_postcode'] 作为变量或任何东西,因为我不知道该怎么做,但是“.$_SESSION['user_id'] 被设置为一个变量,因为这是由我的一个朋友完成的,他从未向我展示过如何做到这一点。所以我不知道如何解决这个问题,我是否可以不知何故用户“.$_SESSION['user_id'].
我不能简单地将任何列名添加到 $_SESSION['columnHere'] 吗?
我已经为此工作了一天多,但我无法弄清楚,我对 php 和 mysql 真的很陌生,我知道这似乎是一个愚蠢的问题,但请有人告诉我,因为我正在尝试所有排序,无处可去。