用于查找具有相同兴趣的人的PHP算法

时间:2016-10-23 12:17:24

标签: php mysql

在我的MySql中,我有Interests列,用于存储用户的兴趣。该行从简单ReadngAstronomy,Dancing,Engineering,Fashion,Iceskating,Music,Painting,Puzzles,Singing,Yoga,Gardening,Reading不等。 我的目标是找到与用户有共同兴趣的人。 这是我的代码

$selhobbies=$con->query("SELECT Interests FROM user_opt WHERE Username='$NameId'");
$Users_hobbies=$selhobbies->fetch_row();
$query=$con->query("SELECT Username FROM user_opt WHERE Interests LIKE '%{$Users_hobbies[0]}%'") or die($con->error);

现在,如果User_hobbiesReading,Music,则找不到其业余爱好只有Reading的人。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

我这样做就是爆炸User_hobbies

$explode=explode(',',$Users_hobbies[0]);
for ($i=0; $i <=$come_count; $i++) { 
    $query.="UNION
             SELECT Username FROM user_opt WHERE Interests LIKE '%".$explode[$i]."%'";
}
$run=$con->query($query) or die($con->error);