2017-02-12 21 views
0

我想在關鍵字上進行即時搜索(google like)Jquery ajax必須從HTML輸入字段值到PHP和PHP必須在SQL表中命名爲「title」的任何字開始或包含書面文字/字母,如果沒有發現任何東西,它必須在div中打印結果。PHP無法從數據庫中得到結果

下面是一個例子:

enter image description here

圖片說明:最多是輸入字段,下拉框是結果框打印,我們可以看到這是工作,但PHP唐不想從SQL獲取數據,只打印保加利亞語言的0值(Nothing Found)結果。

有我的代碼:

<?php 
 
    $hostname = "localhost"; 
 
    $username = "shreddin"; 
 
    $password = "!utf55jyst"; 
 
    $databaseName = "shreddin_nation"; 
 
    $connect = new mysqli($hostname, $username, $password, $databaseName); 
 
    $fsearch = ""; 
 

 
    if (!empty($_POST['fsearch'])) { 
 
     $fsearch = $_POST['fsearch']; 
 

 
     $req = $connect->prepare("SELECT title FROM food_data_bg WHERE title LIKE ?"); 
 

 
     $req->bind_param('s', $fsearch); 
 
     $req->execute(); 
 
     if ($req->num_rows == 0) { 
 
      echo 'Не бяха намерени резултати!'; 
 
     } 
 
     else { 
 
      while ($row = $req->fetch_array()) { 
 
       ?> 
 
        <div class = "search-result"> 
 
         <span class = "result-title"> 
 
          <? php 
 
           echo $row['title']; 
 
          ?> 
 
         </span><br> 
 
        </div> 
 
       <?php 
 
      } 
 
     } 
 
    } 
 
?>

的代碼工作,直到else {...}只有這部分沒有工作..;/ 我試圖用回聲一些成果else {...}後,因爲我認爲這是一個與我的代碼問題,但它沒有任何工作方式......有人可以向我解釋我的錯誤在哪裏(簡單的語言請)我不是很擅長使用PHP編碼exept。

我不會把Jquery和HTML放在這裏,因爲所有的工作都很好,post方法都很好,問題在於php。但當然,如果你需要它來幫助我,我會粘貼它沒有問題。

+0

也許試試這個:'$ req-> bind_param('s',$ fsearch。'%');' – pronngo

+0

感謝Adam,它給了我錯誤無法通過引用傳遞參數2,將嘗試修復它並將發佈回答這裏,如果我得到它的權利。 –

回答

1

編輯

$value = '%'.$fsearch.'%; 
$req->bind_param('s', $value); 

,將工作:)

+0

請嘗試給出更多解釋。你也可以閱讀這個https://stackoverflow.com/help/how-to-answer –

+0

它給了我錯誤無法通過引用傳遞參數2,猜測它是因爲我不需要直接傳遞值bind_param,會嘗試修復它,如果我可以,並會在這裏發佈答案。謝謝! –

+0

嘿,我剛剛編輯我的答案。讓我知道如果它的作品:) – jesuisgenial

0

<?php 
 
$hostname = "localhost"; 
 
$username = "username"; 
 
$password = "pass"; 
 
$databaseName = "dbName"; 
 
$connect = new mysqli($hostname, $username, $password, $databaseName); 
 
$fsearch=""; 
 

 
if(!empty($_POST['fsearch'])) { 
 
$fsearch = $_POST['fsearch']; 
 

 
$req = $connect->prepare("SELECT title FROM food_data_bg WHERE title LIKE ?"); 
 
$value = '%'.$fsearch.'%'; 
 
$req->bind_param("s", $value); 
 
$req->execute(); 
 
$req->store_result(); 
 

 
if ($req->num_rows == 0){ 
 

 
echo 'Няма резултати'; 
 
} 
 
else{ 
 
echo 'ДАА'; 
 
} 
 
} 
 

FINALY!是最終的結果,它是打印ДАА時有發現結果和Нямарезултати時,沒有任何結果1個月疼痛感謝的笑給大家這讓我 3後固定它