我正在尝试找到一种方法来显示我网站上另一个用户本地的用户,这些用户在数据库中有匹配的邮政编码。
例如,如果用户'a'的邮政编码为m3 4jj
且用户'b'的邮政编码为m3 4aj
,那么mysql查询将显示匹配并以m3 4
开头的邮件例如。我是php和mysql的新手,我不确定我是否正朝着正确的方向前进。
到目前为止,我已经得到了这个:
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'";
$local_set = mysql_query($query, $connection);
confirm_query($local_set);
return $local_set;
}
但是现在我想让它如果登录用户/“._SESSION ['user_id']。”其邮政编码为m4
或m5
或m6
,然后会显示其他具有匹配邮政编码的用户。
我试过这个:
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=".$_SESSION['user_postcode']."
$local_set = mysql_query($query, $connection);
confirm_query($local_set);
return $local_set;
}
但是它导致了这个错误:
Database query failed: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 4
我的数据库中存储邮政编码的列是user_postcode
所以理论上我会认为这会起作用;有什么理由不是吗?
答案 0 :(得分:0)
将单引号放回原位......
$query = "SELECT *
From ptb_stats, ptb_users
WHERE ptb_stats.user_id=ptb_users.id
AND ptb_stats.user_postcode='".$_SESSION['user_postcode']."'";