我的网站上有一个搜索页面,您可以输入一个人的用户名来显示他们的个人资料,尽管只有在您输入完整的用户名时才有效。我想检查行用户名列是否包含用户输入的字符序列,以便在输入时输入:'Mr'它将显示结果'MrDare360'等等。
这是我目前的代码:http://pastebin.com/68dgLZf8
最简单或最好的方法是什么?
答案 0 :(得分:8)
使用LIKE。受控示例查询:
SELECT name FROM users WHERE name LIKE 'Mr%';
%
字符是通配符。上面的示例将匹配字符串开始与Mr
(正如您的问题所述)。您也可以%Mr%
在字符串中间查找Mr
,或%Mr
在字符串末尾查找Mr
。
答案 1 :(得分:0)
尝试:
$query = $sqli_con->query("SELECT id, username, avatar, first_name, last_name, country, gender, user_level FROM members WHERE username LIKE '%$search_query%'");