PHP SQLITE全文搜索

时间:2014-06-11 20:51:14

标签: php sqlite

我写了一个sqlite全文搜索,我做错了。如果我输入我的搜索" Puma Adidas"我想在MAKE列中搜索两个单词。

目前,如果它与搜索词完全匹配,则只显示一个单词。我只是无法弄清楚我错过了什么,请问我有什么帮助吗?

由于

HTML:

<form action="search.php" method="get">
Search: <input type="text" name="SEARCH">
<input type="submit" class="btn btn-default">
</form>

PHP:

$search_string = $_GET['SEARCH'];
$result = $db->query("SELECT * FROM PRODUCTS WHERE MAKE IN('$search_string') AND VISIBLE='YES' ORDER BY DATE DESC");

我确实将PHP代码更改为:

$result = $db->query("SELECT * FROM PRODUCTS WHERE MAKE LIKE ('%$search_string%') AND VISIBLE='YES' ORDER BY DATE DESC");

但不幸的是,它仍然不起作用,同样的问题。

1 个答案:

答案 0 :(得分:0)

尝试使用LIKE,而不是IN。 IN用于不同的目的。

$search_string = $_GET['SEARCH'];

    $result = $db->query("SELECT * FROM PRODUCTS WHERE MAKE LIKE '$search_string') AND VISIBLE='YES' ORDER BY DATE DESC");

检查LIKE语句的语法;如果要在整个字段中搜索搜索字词,则需要使用百分号包围搜索字符串。