background image

如你所知(译注:不好意思,看王小波就学会了这么个口头禅),我的 php 后台程

序都叫做 rpc.php(RPC 指远程过程调用),而没用它实际执行的功能来命名,但是也
还不错了。

// PHP5 Implementation - uses MySQLi. 

db = new mysqli(‘localhost’, ‘root’ ,”, ‘autoComplete’);
if(!db) {
// Show error if we cannot connect.
echo ‘ERROR: Could not connect to the database.’;
} else {
// Is there a posted query string?
if(isset(_POST[‘queryString’])) {
queryString = _POST[‘queryString’];
// Is the string length greater than 0?
if(strlen(queryString) >0) {
// Run the query: We use LIKE ‘queryString%’
// The percentage sign is a wild-card, in my example of countries it works like 
this…
// queryString = ‘Uni’;
// Returned data = ‘United States, United Kindom’; 
query = db->query("SELECT value FROM countries WHERE value LIKE 
‘queryString%’ LIMIT 10");
if(query) {
// While there are results loop through them - fetching an Object (i like PHP5 
btw!).
while (result = query ->fetch_object()) {
// Format the results, im using <li> for the list, you can change it. 
// The onClick function fills the textbox with the result.
echo ‘<li onclick="fill(’‘.result->value.’‘);">’.result->value.‘</li>’;
}
} else {
echo ‘ERROR: There was a problem with the query.’;
}
} else {
// Dont do anything.
} // There is a queryString.
} else {
echo ‘There should be no direct access to this script!’;
}
}

?>
PHP 代码解释:
鉴于代码中我已经加了很多注释,在这里我就不再说的很详细了。

 ‘

一般情况下,需要接收这个 QueryString’ 然后在其最后使用通配符产生一个查询

语句。