0

我有一个很大的问题。我允许用户按兴趣搜索其他用户。问题是,如果用户输入了多个空格,它会返回每个用户(甚至会重复一些)。我能做些什么来阻止这种情况?

这是我的代码,你需要看看发生了什么:

    $connect= mysqli_connect('localhost', '', '', 'shar31t');

    if (isset($_GET['interest']) && $_GET['interest'] != " ") {
        $interest= rtrim($_GET['interest']);
        $interest= mysqli_real_escape_string($connect, $interest);
        $query= "SELECT user_id FROM interests WHERE interest LIKE 
            '%".$interest."%'";
        $result= mysqli_query($connect, $query);
            }

谢谢

马特

4

2 回答 2

2

您应该替换以下行:

if (isset($_GET['interest']) && $_GET['interest'] != " ") {

对于这个:

if (isset($_GET['interest']) && trim($_GET['interest']) != '') {

这应该可以防止空字符串进入您的查询。

于 2012-09-19T21:20:01.090 回答
2

除了 Nelson 的回答,请SELECT distinct user_id避免重复,因为用户似乎可以有多种兴趣。

于 2012-09-19T21:23:03.327 回答