2017-01-10 8 views
0

私は今2週間から即座に検索をしようとしていますし、方法はありません。私は知っていることを試しました。私はあなたのウェブサイトで検索メニューを持っているので、コードが何をしなければならないかを説明する必要はないと思います。大きな問題の一つは(問題の場合)$_ajaxです。 $_POSTの方法では、情報を投稿する必要があるURLプロパティを入力すると、ブラウザのURLのようになります。Food-Groups-BG.php名前が正しいか間違っていてもエラーは見つかりません。そして、現時点では、私のコードは実際にはあまり効果がなく、どちらのエラーも出ていません。コンソールでそれを与えるだけですhttp://prntscr.com/dtoonfGoogleのインスタント検索のように作成するには?

ここに私のコードです!

jQuery(document).ready(function ($) { 
 
    $("#food_search").keyup(function(event) { 
 
     var search_term =$(this).val(); 
 
     $.ajax({ 
 
      type:"POST", 
 
      url:"/Food-Search", 
 
      data:{fsearch:search_term}, 
 
      success:function(res) { 
 
       $("#food_search_result").html(res); 
 
      }, 
 
      error: function (xhr, ajaxOptions, thrownError) { 
 
       alert(xhr.status); 
 
       alert(xhr.responseText); 
 
       alert(thrownError); 
 
      } 
 
     }); 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script> 
 
<!---------------------------------------------------------------- 
 
           HTML 
 
-----------------------------------------------------------------> 
 
<p>Търсене на храни: <input type="text" name="food-search" id="food_search"></p> 
 
<!---------------------------------------------------------------- 
 
           PHP 
 
-----------------------------------------------------------------> 
 
<?php 
 
$hostname = "localhost"; 
 
$username = "username"; 
 
$password = "pass"; 
 
$databaseName = "dbName"; 
 

 
$connect = mysqli_connect($hostname, $username, $password, $databaseName); 
 
if(isset($_POST['fsearch']) && $_POST['fsearch']!="") { 
 
    $fsearch = $connect->prepare("SELECT * FROM food_data_bg WHERE search_term LIKE :title"); 
 
    $fsearch->execute(array(
 
     'title'=>'%'.$_POST['title'].'%' 
 
    )); 
 
    if($fsearch->rowCount()==0) { 
 
     echo 'Не бяха намерени резултати!'; 
 
    } else { 
 
     while($data=$fsearch->fetch()) { 
 
     ?> 
 
      <div class="search-result"> 
 
       <img src="<?php echo $data['fimage']; ?>" class="fimage"/> 
 
       <span class="result-title"><?php echo $data['title'];?></span><br> 
 
       <span class="calories-total"><?php echo $data['calories total'];?></span><br> 
 
      </div> 
 
     <?php 
 
     } 
 
    } 
 
} 
 
?>

すべてのヘルプは高く評価されます。

+0

申し訳ありませんが、2番目のコードで何を言っているのか分かりません。私のフード検索ページでは、このコードでここで使用したPHPコードのみです。 –

答えて

0

結果を正しく取得するには、PHPページでjson_encode functionを使用する必要があります。 echo json_encode($array);のような配列をエコーすると、ページにヘッダーが含まれてはならないことに注意してください。したがって、空のページにそれを印刷してください。

+0

私は現時点で大学に居住していますが、家に戻ってから試してみると、これが正しいかどうかを確認することができますが、正しくないか疑問があります。/ http://pastebin.com/ NjT4UgWm私のコードからその行 –

関連する問題