久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

PHP SQL SELECT where like search item with multiple words

PHP SQL SELECT where like search item with multiple words(PHP SQL SELECT where like search item with multiple words)
本文介紹了PHP SQL SELECT where like search item with multiple words的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

我有一個查詢表單的 select where like 查詢,如下所示:

I have a select where like query for a seach form which is as follows:

<?php 
$bucketsearch = sanitizeone($_POST["bucketsearch"], "plain");
$bucketsearch = strip_word_html($bucketsearch);
?>

 if(isset($_POST['search'])){
                  $result=MYSQL_QUERY( "SELECT * FROM buckets where bucketname like '%$bucketsearch%' order by bucketname");
              }else{
              $result=MYSQL_QUERY( "SELECT * FROM buckets order by bucketname");
          }

我的問題是,如果有人搜索例如apple and pear",我沒有得到任何包含任何單詞的結果,我只能讓它返回包含所有單詞的結果(1 個結果).

My problem is that if someone searches for instance for "apple and pear" i do not get any results that contain any of the words, i can only make it return results (well 1 result) with all the words in it.

誰能幫我讓這個搜索更通用一些??提前致謝.

Can anyone help me make this search a bit more versitle?? Thanks in advance.

推薦答案

所以您想要使用輸入的每個詞進行 AND 搜索,而不是使用確切的字符串?這樣的事情怎么樣:

So you want an AND search using each of the words entered, rather than the exact string? Howabout something like this:

$searchTerms = explode(' ', $bucketsearch);
$searchTermBits = array();
foreach ($searchTerms as $term) {
    $term = trim($term);
    if (!empty($term)) {
        $searchTermBits[] = "bucketname LIKE '%$term%'";
    }
}

...

$result = mysql_query("SELECT * FROM buckets WHERE ".implode(' AND ', $searchTermBits).");

這會給你一個查詢:

SELECT * FROM buckets WHERE bucketname LIKE '%apple%' AND bucketname LIKE '%and%' AND bucketname LIKE '%pear%'

如果您想匹配任何搜索詞而不是全部,請將 AND 更改為 OR.進一步的改進可能涉及定義一些停用詞,例如和",以提供更好的結果.

change the AND to an OR if you want to match any of the search terms rather than all. Further improvements could involve defining some stop words like 'and' to give better results.

這篇關于PHP SQL SELECT where like search item with multiple words的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

Joining 2 tables in SELECT(MYSQL/PHP)(在 SELECT(MYSQL/PHP) 中加入 2 個表)
How to make lt;option selected=quot;selectedquot;gt; set by MySQL and PHP?(如何使lt;option selected=“selectedgt;由 MySQL 和 PHP 設置?)
Auto populate a select box using an array in PHP(使用 PHP 中的數組自動填充選擇框)
json_encode produce JSON_ERROR_UTF8 from MSSQL-SELECT(json_encode 從 MSSQL-SELECT 產生 JSON_ERROR_UTF8)
MySQL ORDER BY rand(), name ASC(MySQL ORDER BY rand(),名稱 ASC)
PDO get data from database(PDO 從數據庫中獲取數據)
主站蜘蛛池模板: 福利视频一区 | 午夜影视剧场 | 亚洲福利一区 | 国产精品久久久久久久久久辛辛 | 中文字幕丰满人伦在线 | 欧美三级 欧美一级 | 成人在线视频免费观看 | 久草视频免费 | 久久精品99久久久久久 | 黄色福利 | 韩国精品一区二区 | 成人免费毛片网站 | 亚洲二级片 | 国产成人a亚洲精品 | 日韩精品极品 | 超碰123| 欧美日韩视频在线 | 精品一区二区三区视频 | 色综合天天综合网天天狠天天 | 国产精品入口66mio男同 | 手机看片国产 | 韩国精品一区 | 国产手机在线视频 | 国产手机在线视频 | 在线中文字幕 | 国产免费无遮挡 | 成人免费视频一区二区 | 日韩在线视频一区 | 毛片91 | 日本在线不卡视频 | 欧美在线a | 中文字幕三级 | 性爱视频日本 | 五月在线视频 | 欧美精品一级片 | 久久久精品一区二区三区 | 国产精品第二页 | 一区二区三区久久久 | 国产成人三级一区二区在线观看一 | 亚洲激情自拍 | 国产午夜一区二区 |