-1

我之前在这里问了一个问题,这个问题很快得到了简洁的回答,谢谢你:)。但是现在我遇到了一个问题,我的搜索脚本在我不希望它时从数据库中拉出当前用户。假设我使用以下帐户登录:MrDare360。我不想从数据库中提取我的信息,只想使用我的搜索脚本提取其他人的信息。我尝试在我的 SQL 查询中使用 NOT LIKE 和 != 从数据库中删除我的结果,但它不起作用。

这是我当前的代码: http: //pastebin.com/GXAbQJRb

这是我的数据库: http: //gyazo.com/4b725e7e283d963ad4d0652da0a52a92

什么是最简单或最好的方法?谢谢。

编辑:当前用户的用户名、电子邮件和 ID 存储在会话中,我想使用这些来限制搜索脚本提取您的帐户结果。

4

2 回答 2

0

这应该有效:

$your_username = $_SESSION['username'];

$query = $sqli_con->query("
    SELECT 
         id, username, avatar, first_name, last_name, 
         country, gender, user_level 
    FROM 
         members 
    WHERE 
         username LIKE '%$search_query%' AND 
         username NOT IN ('$your_username')
");

请注意,我假设您的用户名会话变量对于 SQL 是安全的。另请注意,无论何时处理外部数据,都应该使用准备好的语句。

于 2013-01-18T12:56:46.240 回答
0

只写这个查询

SELECT id, username, avatar, first_name, last_name, country, gender, user_level 
FROM members WHERE username LIKE '%$search_query%' AND id!='$_SESSION[id]'

然后获取所有没有登录用户名的用户

于 2013-01-18T13:03:15.490 回答