使用mysql匹配数据库中的用户邮政编码与会话用户?

时间:2013-03-11 01:21:42

标签: php mysql

我正在尝试找到一种方法来显示我网站上另一个用户本地的用户,这些用户在数据库中有匹配的邮政编码。

例如,如果用户'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']。”其邮政编码为m4m5m6,然后会显示其他具有匹配邮政编码的用户。

我试过这个:

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所以理论上我会认为这会起作用;有什么理由不是吗?

1 个答案:

答案 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']."'";