2013-06-19 143 views
0

我有一些问题,我无法确定。我已经编写了使用Type-ahead来获取自动完成搜索系统的功能。Typeahead Bootstrap在本地但不在生产服务器上工作

该功能在localhost机器上完美工作,但当它上传到服务器时,该功能被破坏。

这是我提前输入语法:

<script> 
     $(document).ready(function(){ 
      $('#q').typeahead({ 
       source: function(query, process){ 
        $.ajax({ 
         url:'autosearch.php', 
         type:'POST', 
         data:'query=' + query, 
         dataType: 'JSON', 
         async: true, 
         success:function(data){ 
          process(data); 
         } 
        }); 
       } 
      }) 
     }); 
     </script> 

它得到文本输入(以下HTML)值

<form method="GET" action="search.php" class="form-inline pull-right"> 
         <input name="q" id="q" class="span5" type="text" placeholder="search" data-provide="typeahead" autocomplete="off"> 
         <button type="submit" class="btn btn-primary"> <i class="icon-search icon-white"></i></button> 
        </form> 

有什么不对这个功能呢?

感谢

UPDATE

从萤火得到结果后,它显示了PHP文件时发生的错误

注意:未定义指数:●在C:\ XAMPP \ htdocs中\ kbase \ panel \ autosearch.php on line 5

php代码是这样的:

<?php 
require_once "configuration.php"; 
$q = mysql_real_escape_string(strtolower($_GET['q'])); 

$sql = "SELECT DISTINCT title as title FROM ** WHERE title LIKE '%" . $q ."%'"; 
$rsd = mysql_query($sql); 
$cname = array(); 

while ($rs = mysql_fetch_assoc($rsd)) 
{ 
    $cname[] = $rs['title']; 
} 
echo json_encode($cname); 
?> 

回答

0

autosearch.php发送一个POST请求,而不是一个GET之一。它也发送变量名称query而不是q

作为一个头的,你可以简化AJAX查询:

$(document).ready(function(){ 
    $('#q').typeahead({ 
     source: function(query, process) { 
      $.ajax({ 
       url:'autosearch.php', 
       type:'POST', // <- defaults to GET (desired by your PHP) 
       data:'query=' + query, // <- change to {'q': query} for your PHP 
       dataType: 'JSON', // <- 'json' LOWERCASE 
       async: true, // <- defaults to true anyway 
       success: process // <- same function signature 
     } 
    }) 
}); 
+0

是的,谢谢pickypg,我只有jquery的查询命名为q。我只是从GET添加一些isset,尝试将其更改为POST方法 – randytan

+0

如果您希望它成为POST请求,那么将$ _GET改为$ _POST并将type设置为POST '在Ajax调用中。 – pickypg

相关问题