php和mysql用户搜索

php和mysql用户搜索,php,mysql,Php,Mysql,我写这段代码是为了从mysql搜索用户: $query = $db->query("SELECT * FROM `users` WHERE `id` = {$id} "); while($row = $query->fetch_assoc()){ echo $row['username']; // .... echo "People also search :"; // the people also search box } 我希望这样,当用户页面

我写这段代码是为了从mysql搜索用户:

$query = $db->query("SELECT * FROM `users` WHERE `id` = {$id} ");
while($row = $query->fetch_assoc()){
    echo $row['username'];
    // ....
    echo "People also search :";
    // the people also search box
}
我希望这样,当用户页面加载到页面底部时,可以是这样一个框:

Walter

人们也会搜索:

Bruce
Kevin
Jesse

当你搜索演员或者


我怎样才能做到这一点呢?

您需要保留过去搜索的记录,然后在搜索新搜索时,找到过去搜索过的所有人,并找到他们搜索过的其他内容。

为什么不先让它与数据库响应中的一些随机值一起工作呢

$query = $db->query("SELECT username FROM `users");
while($row = $query->fetch_assoc()){
     $rows[]=$row
}
//id of the user by which you have made the search
echo $rows[$id];
unset($rows[$id]);
echo "People also search :".PHP_EOL;
$rand_keys = array_rand($rows, 5);
foreach($rand_keys as $key){
    echo $rows[$key];
}

你先试过什么吗?没有,我没有任何想法你的db方案是什么?你如何检查它们是否相似?也许每个用户都有一个类似表格的搜索?需要更多信息来帮助使用AJAX动态更新页面我为所有用户使用一个表,我想为这些人创建一个列也搜索这将是大量搜索,我只想显示相似的用户。Sok,如何定义“相似”?如果只是相似的名字,那么你可以做一个文本搜索,如果你正在使用其他东西来定义相似的(例如权限),那么你需要一种方法来比较这些。好的,我最初的一个方法是搜索这个的人也搜索这些。如果你只想要文本相似的(比如拼写错误),那么这个问题可能会对你有所帮助:但是如果你想知道谷歌在搜索Actor时是如何工作的,那么你需要一个属性列表,使结果“相似”。在该电影示例中,您将得到与您搜索的人在同一部电影中工作的演员,因此您需要有一个连接数据库,并返回与您搜索的内容连接最多的3个。