【发布时间】:2014-06-05 08:06:44
【问题描述】:
我在下面有一个小代码sn-p。我正在使用 jQueryUI 的自动完成功能从我的 mySql 数据库中提取数据,并在有人搜索特定用户时将用户名填充到搜索栏中。我希望它自动完成正在搜索的人的名字和姓氏。例如,如果自动完成函数预测有人正在寻找 Lebron James,我希望它同时返回名字和姓氏。目前,我只能让它返回名字。通过查看文档,我认为我可以通过将它们一个接一个地添加来添加多个键和值对。这只会为我产生一个名字。我在第二个标签/值对名称之后添加了一个“2”,看看给它们不同的名称是否会有所帮助。它仍然只返回名字而不是姓氏。如何让它在我的自动完成中返回名字和姓氏?
我的 index.php
<?php
// here we set the database information
$SERVER = 'localhost';
$USER = 'user';
$PASS = 'password';
$DATABASE = 'database';
// we are instantiating the mysqli database object
$db = new mysqli($SERVER, $USER, $PASS, $DATABASE);
// error check
if($db->connect_errno > 0){
// report an error
die('Unable to connect to database [' . $db->connect_error . ']');
}
$sql = 'SELECT * FROM users WHERE user LIKE "' . $_REQUEST['term'] . '%"';
$result = $db->query($sql);
$data = array();
while ($row = $result->fetch_assoc())
{
$data[] = array(
'label' => $row['firstName'] ,
'value' => $row['lastName'],
'label2' => $row['lastName'],
'value2' => $row['lastName'],
);
}
// jQuery wants JSON data
echo json_encode($data);
flush();
我的html和js
<form id="searchbox" action="">
<input id="search" type="text" placeholder="Search">
<!--<input id="submit" type="submit" value="Search">-->
</form>
<script type="text/javascript" >
//script for autocompleting usernames when being search
$('#search').autocomplete(
{source:'autosuggest.php',
minLength:2
});
</script>
【问题讨论】:
标签: php jquery mysql autocomplete