我有一个网站,我需要用户与其他用户进行互动。到目前为止,所有这些都是在JQuery / Jquery Mobile和PHP中使用MySQL数据库完成的。
用户需要选择其他用户在游戏中玩游戏,但可能不知道他们的确切用户名。
我想要的是一个动态文本字段,用于搜索数据库中的usertable,并返回与搜索字段中的字母匹配的用户名,例如用户输入:
S-A-M和textfield返回来自DB,SamSmith,SamJones,SamBlah的所有相关用户,然后返回用户类型
答案 0 :(得分:3)
你正在寻找的是“自动完成”
你可以自己做,但是已经开发了一些插件来帮助你。
http://jqueryui.com/demos/autocomplete/
您仍然需要对查询进行编码以获取服务器端的用户列表。
希望这有帮助
答案 1 :(得分:1)
此PHP代码对该Jquery库非常有用 “autocomplete.php”
<?php
$q=$_GET['q'];
$my_data=mysql_real_escape_string($q);
$mysqli=mysqli_connect($host,$user,$password,$db) or die("Database Error");
$sql="SELECT name FROM products WHERE name LIKE '%$my_data%' ORDER BY name";
$result = mysqli_query($mysqli,$sql) or die(mysqli_error());
if($result)
{
while($row=mysqli_fetch_array($result))
{
echo $row['name']."\n";
}
} else {
echo "No Result!";
}
?>
和
<script>
$(document).ready(function(){
$("#tag").autocomplete("autocomplete.php", {
selectFirst: true
});
});
</script>
<input id="tag" name="product_name" type="text" size="12"/>
答案 2 :(得分:0)
然后将用户循环到HTML并用javascript代码将它们用Jquery Autocomplete包围。
$query = "SELECT id,username FROM users";
$result = mysql_query($query) or die(mysql_error());
while($row = mysql_fetch_array($result))
{
$users[] = $row;
}
然后在jquery autocompletes available标签内循环用户名