gpt4 book ai didi

php - 如何使用 MySQL 查询从数据库中的所有行中查找相似结果

转载 作者:行者123 更新时间:2023-11-29 08:17:53 25 4
gpt4 key购买 nike

我想像 Facebook 一样“搜索你的登录信息”:

例如。搜索“Stock Overflow”将返回

Stack Overflow
SharePoint Overflow
Math Overflow
Politic Overflow
VFX Overflow

例如。搜索“LO”将返回:

pabLO picasso
michelangeLO
jackson polLOck

例如。搜索用户名“user123”将返回:

 user123
user1234
and etc ...

我的数据库行:

userid  |   username  |  useremail   |  user_fname   |  user_lname  

我想创建一个搜索输入来搜索任何行中的单词,如上面的示例,

这是我到目前为止的 php :

$string = $purifier->purify(@$_POST['string']); 

$query = "SELECT * FROM users WHERE user_fname = '".$string."' OR user_lname = '".$string."' OR username = '".$string."' OR useremail= '".$string."'";
mysql_query("SET NAMES 'utf8'");
$result2 = mysql_query($query);
$num = mysql_num_rows($result2);

if($num == 1)
{
//true
}else{

//not found nothing
}

这种方式效果不佳,并且它不会返回我在搜索输入中输入的单词的所有相似结果。另外,如果有超过 1 个相似结果,我如何用 foreach 返回它?

谢谢分配。

更新:

谢谢大家,我更新了代码来修复它:

 $query = "SELECT * FROM users WHERE user_fname like '%".$string."%' OR user_lname like '%".$string."%' OR username like  '%".$string."%' OR useremail like '%".$string."%'";

我没有使用 mysql ,只是为了我更容易做到这一点的例子..

最佳答案

试试这个

$string = $purifier->purify(@$_POST['string']); 

$query = "SELECT * FROM users WHERE user_fname like '%".$string."%' OR user_lname like '%".$string."%' OR username like '%".$string."%' OR useremail like '%".$string."%'";
mysql_query("SET NAMES 'utf8'");
$result2 = mysql_query($query);
$num = mysql_num_rows($result2);

if($num == 1)
{
//true
}else{

//not found nothing
}

关于php - 如何使用 MySQL 查询从数据库中的所有行中查找相似结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20186250/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com