自动完成,PHP,JS,AJAX MySql

时间:2013-09-15 02:30:30

标签: javascript php mysql ajax

我是Ajax的新手。我有Mysql数据库表

city_list 

id | city | province | country
------
1 | Calgary | AB | Canada
------------------- 
2 | Edmonton | AB | Canada
-------------------- 
3 | Toronto | ON | Canada
-------------------

依旧.....

index.php

$('#city').autocomplete(
    {
        source: "searchSuggest.php",
        minLength: 3
    });

我想为以下字段创建自动完成

<input type="text" id="city" name="city">

serchSuggest.php

<?php
include('db_connect.php');
if($_REQUEST)
{
    $city   = $_REQUEST['city'];
    $city = ucwords($city);
    $return_results = array();
    $query = "select city, province from city_list where city LIKE '$city%'";
    $results = mysql_query( $query) or die('ok');
    $row=mysql_fetch_array($results);
        $i=0;
        while($row)
        {
        $i=$i+1;
        $return_results[$i] = $row;
        $row=mysql_fetch_array($results);
        }
        print json_encode($return_results);
}    
?>

这很好。

var tags = [ "c++", "java", "php", "coldfusion", "javascript", "asp", "ruby" ];
            $( "#city" ).autocomplete({
                source: function( request, response ) {
                        var matcher = new RegExp( "^" + $.ui.autocomplete.escapeRegex( request.term ), "i" );
                        response( $.grep( tags, function( item ){
                        return matcher.test( item );
                        }) );
                        }
                    });

如何将源更改为数据库表city_list。感谢。

2 个答案:

答案 0 :(得分:0)

我会从this开始我没有使用过它,但是看看源代码,它会从数组中获取预先填充的值。所以我要做的是将所有信息加载到一个数组中并将其放入代码中,这将非常简单直接。

答案 1 :(得分:0)

你可以从php请求中返回一个数组,然后你可以尝试jquery autocomplete的参数。你可以尝试在jquery-ui中读取这个例子你可能从网站上获得点数,因为你只是失败了使用