2017-02-03 68 views
1

我嘗試創建一個提示文本輸入字段讀取MySQL數據庫的提示信息,當用戶輸入一個字母例如一個所有字包含字母一個出現我使用的輸入字段下PHP和MySQL。推薦文本輸入字段

的HTML

<label for="email">Location *</label> 
    <input type="text" list="mylocation" id="suggest" name="txt_location"> 
     <datalist id="mylocation"> 

     </datalist> 
    </div> 

PHP代碼

<?php 
include("../includes/connect.php"); 
$location=$_GET['txt_location']; 
$sql=mysqli_query($conn,"select DISTINCT(db_location) from tbl_marketing where db_location like '$location%' order by db_location")or die(mysqli_error($conn)); 
if(mysqli_num_rows($sql)>0){ 
    while($row=mysqli_fetch_array($conn)){ 
     $loc=$row['db_location']; 
     echo"<option value='$loc'>"; 
    }} 
?> 

我的腳本

$(document).ready(function(){ 
    $("#suggest").keyup(function(){ 
     $.get("suggest.php",{location: $("#suggest").val()},function(data){ 
      $("datalist").empty(); 
      $("datalist").html(data); 

     }); 
    }); 
}); 

我也用在我的網站引導 的問題是,我的代碼沒有工作。有沒有其他的方法可以做,或者我可以使用bootstrap來做到這一點,什麼是和如何做到這一點??!

+0

這個問題顯得寬闊。也許把它分解成小塊,並說明你已經嘗試了什麼。 –

+0

@現實洪流這個代碼我已經試過,但我沒有任何結果。 – m7md

+0

嘗試改變這種'$位置= $ _ GET [ 'txt_location'];'本'$位置= $ _ GET [ '位置'];' – dann

回答

0

試試下面的代碼。希望它有效。

$(document).ready(function(){ 
    $(document).on('keyup',"#suggest",function(){ 
     $.get("suggest.php",{txt_location: $("#suggest").val()},function(data){ 
      console.log(data); 
      $("#mylocation").empty(); 
      $("#mylocation").append(data); 
     }); 
    }); 
}); 

故障排除步驟:

  1. 檢查DataList的工作。 (添加一些虛擬<option>集)
  2. 檢查是否suggest.php已連接並提供您的結果。使用console.log

基本上你的腳本是正確的,除了txt_locationlocation,即鍵值對不匹配。

+0

之後試圖使用開發人員工具檢查我看到這個錯誤undefined index:txt_location – m7md

+0

我該怎麼辦這個錯誤?? – m7md

+0

選項1 ='$獲得( 「suggest.php」,{txt_location:$( 「#建議」)VAL()},功能(數據){' –

0

試試這個PHP代碼

<?php 
include("../includes/connect.php"); 
$location=$_GET['location']; 
$sql=mysqli_query($conn,"select DISTINCT(db_location) from tbl_marketing where db_location like '".$location."%' order by db_location")or die(mysqli_error($conn)); 
if(mysqli_num_rows($sql)>0){ 
    while($row=mysqli_fetch_array($conn)){ 
     $loc=$row['db_location']; 
     echo"<option value='$loc'>"; 
    } 
} 
?>