Php 全文搜索引擎,多列,布尔模式
我正在为android应用程序制作一个搜索引擎,该应用程序在布尔模式下对“+word1+word2”的多列进行全文搜索和匹配。 但是,我无法获得任何搜索结果 例如,搜索字段类型-“公海” 然后,Sql将根据(“+open+sea”在布尔模式下)搜索匹配项 和可选择结果的显示列表,在该列表上单击每个结果,将在新页面上提供特定结果的详细信息 对不起,我是android应用程序开发的新手 这是我的search.php的php代码Php 全文搜索引擎,多列,布尔模式,php,android,full-text-search,search-engine,boolean-search,Php,Android,Full Text Search,Search Engine,Boolean Search,我正在为android应用程序制作一个搜索引擎,该应用程序在布尔模式下对“+word1+word2”的多列进行全文搜索和匹配。 但是,我无法获得任何搜索结果 例如,搜索字段类型-“公海” 然后,Sql将根据(“+open+sea”在布尔模式下)搜索匹配项 和可选择结果的显示列表,在该列表上单击每个结果,将在新页面上提供特定结果的详细信息 对不起,我是android应用程序开发的新手 这是我的search.php的php代码 <?php @ $db = new mysqli('local
<?php
@ $db = new mysqli('localhost','username','password','db');
if (mysqli_connect_errno()) {
echo 'Error: Could not connect to database.
Please try again later.';
exit;
}
if(!empty($_POST)){
$term = $_POST['query'];
$words = explode(" ", trim($term));
$termArray = array();
foreach($words as $word){
if(!empty($word)){
$termArray[] = "+$word";
}
}
$searchquery = implode(" ", $termArray);
if (!$term) {
echo 'You have not entered any search details. Please go back and try again.';
exit;
}
//initial query
$query = "SELECT *
FROM servicetable
WHERE MATCH(title,cat,brand,company)
AGAINST ('".$searchquery."' IN BOOLEAN MODE)
ORDER BY title ASC";
$result = $db->$query;
$num_results = $result->num_rows;
//show user what user searched.
echo $searchquery;
echo "<p>Results found: ".$num_results."</p>";
//counts results.
if ($num_results == 0)
{
echo "Sorry, but we can not find an entry to match your query<br><br>";
}
for ($i=0; $i <$num_results; $i++) {
$row = $result->fetch_assoc();
echo "<p><strong>".($i+1).". Outlet Name: ";
echo stripslashes($row['title']);
echo "</strong><br />Category: ";
echo stripslashes($row['cat']);
echo "<br />Opening Hours: ";
echo stripslashes($row['ophours']);
echo "<br />Brand: ";
echo stripslashes($row['brand']);
echo "</strong><br />Company: ";
echo stripslashes($row['company']);
echo "</p>";
}
$result->free();
$db->close();
} else {
?>
<h1>Search</h1>
<form name="form1" action="search.php" method="post">
Enter Search:<br />
<input type="text" name="query" id="query" placeholder="Search a service"/>
<br/>
<input type="submit" value="Search Now" name="completedsearch" />
</form>
<?php
}
?>
你好,我发现了我的错误: 这行更正-->
$result = $db->query($query);