0
經過一番研究,我把這段代碼放在一起來搜索db中的mysql表。雖然它工作正常,但它會限制自己與用戶輸入的內容完全匹配。任何人都知道如何使它符合我的某種相關性?我一直在閱讀關於全文搜索的內容,但我似乎無法真正瞭解它。我該如何改變這個做全文搜索而不是LIKE?
例如,如果您在兩個字段中搜索「未回答的問題」,我希望能夠得到類似結果,包括搜索到的任何字符串中顯示的字詞,並按照相關性,像這樣(搜索結果示例輸出): - 懸而未決的問題 - 回答問題 - 答題 - 懸而未決的問題 - 懸而未決的問題 - 問題 - 答案
$k = trim ($_GET['search']);
$i = "";
$terms = explode (" ", $k);
$query = "SELECT * FROM table1 WHERE ";
foreach ($terms as $each){
$i++;
if ($i == 1)
$query .= "fld_title LIKE '%$each%' OR fld_keyword LIKE '%$each%' ";
else
$query .= "OR fld_title LIKE '%$each%' OR fld_keyword LIKE '%$each%' ";
}
// connect
include_once "connect.php"; //connect 2 db
$query = mysql_query($query);
$numrows = mysql_num_rows ($query);
if ($numrows > 0){
while ($row = mysql_fetch_assoc ($query)){
//
//
// echo out something here
//
//
}
}else
{
echo "No results found for <b>$k</b>";
}