使用PHP使用MySQL表中的值填充搜索输入框

时间:2012-04-17 23:45:23

标签: php jquery mysql search

我目前在我的网站上使用This JQuery作为搜索框。 Javascript当前从.txt文件中调用自动完成结果的值。但是,由于我希望我的网站最终可以选择用户添加这些值,我希望它能从我的数据库表中调用值。

调用.txt文件的索引页面上的JQuery:

    $(document).ready(function(){                
        $("#select3").fcbkcomplete({
            json_url: "data.txt",
            addontab: true,                   
            maxitems: 10,
            input_min_size: 0,
            height: 10,
            cache: true,
            newel: true,
            select_all_text: "select",
        });
    });

.txt文件的格式:

[{"key": "hello world", "value": "hello world"}, {"key": "movies", "value": "movies"},

我认为解决方案不是调用data.txt,而是调用data.php并让代码拉入值:

$getData = mysql_query("SELECT Name FROM tblCocktails"); 

 while($info = mysql_fetch_array($getData)) 
 {
     echo "key: value:".$item['Name']"key: value:".$item['Name']';
 }

然而这似乎不起作用,我在Dreamweaver上的调试决定不起作用。任何帮助将不胜感激。

3 个答案:

答案 0 :(得分:2)

我会使用json_encode()代替硬编码字符串

//if you want other field of the database like value, I mofidied your query for this
$getData = mysql_query("SELECT Name, Value FROM tblCocktails"); 
$index=0;
 while($info = mysql_fetch_array($getData)) 
 {
    //this will be storage every row of your table in an array until while is finish
    $value[$index]=new Array("key"=>$info['Name'],
                             "value"=>$info['Value']
                              );
    $index++;
 }
//convert the array into a json string
echo json_encode($value);

这应该输出你需要的东西

答案 1 :(得分:1)

在while循环中查看echo行。您应该用信息替换项目。

喜欢这个。

$getData = mysql_query("SELECT Name FROM tblCocktails"); 

 while($info = mysql_fetch_array($getData)) 
 {
     echo "key: value:".$info['Name']."key: value:".$info['Name'];
 }

答案 2 :(得分:1)

您的回复必须是 json格式,请在您的php文件中尝试:

$getData = mysql_query("SELECT Name FROM tblCocktails"); 

$data = array();
while($info = mysql_fetch_assoc($getData)) 
{
   $data[] = $info['Name'];     
}
echo json_encode($data);//data array is converted in json format response