0

全文検索を行い、ブール値モードで '+word1 +word2' に対して複数の列と照合する Android アプリ用の検索エンジンを作成しています。しかし、検索結果が得られません。

例: 検索フィールド タイプ - "open sea" の場合、Sql は Match...Against ('+open +sea' IN BOOLEAN MODE) を検索します。

各結果をクリックすると、選択可能な結果のリストが表示され、特定の結果の詳細が新しいページに表示されます。

申し訳ありませんが、私はAndroidアプリ開発の初心者です。

これがsearch.phpの私のphpコードです

<?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
}

?> 
4

1 に答える 1

0

こんにちは、エラーが見つかりました:

この行の修正 -->

$result = $db->query($query);
于 2015-02-06T08:58:43.850 に答える