gpt4 book ai didi

PHP MySQL 搜索组合列

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

当我发现它没有按照我想要的方式搜索时,我刚刚完成了用户系统的搜索功能。

如果我有一个包含 2 列的数据库表,分别称为“fname”和“lname”。

在一行中,“fname”的值为“Ashley”,“lname”的值为“Staggs”。

我可以搜索“Ashley”或“Staggs”,我会得到正确的结果,但如果我搜索“Ashley Staggs”,则不会显示任何结果。

我该如何正确执行此操作?

我的 SELECT 查询如下:

SELECT * FROM `users` WHERE fname LIKE '%" . protect($_GET['s']) . "%' OR lname LIKE '%" . protect($_GET['s']) . "%'

我知道会发生这样的事情,但这次我想不通。

谢谢,阿什莉

最佳答案

“Ashley Staggs”既不在 fname 中,也不在 lname 中,因此您的请求不会返回任何内容。您可以尝试连接您的 MySQL 字段:

SELECT * FROM `users` WHERE fname LIKE '%" . $_GET['s'] . "%' OR lname LIKE '%" . $_GET['s'] . "%' OR CONCAT(fname, ' ', lname) LIKE '%" . $_GET['s'] . "%'

[编辑] 更好:

SELECT * FROM `users`
WHERE REPLACE(CONCAT(fname, lname, fname), ' ', '')
LIKE '%" . str_replace(' ', '', protect($_GET['s'])) . "%'

关于PHP MySQL 搜索组合列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10182027/

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