PHP MySQL自动完成
我有一个自动完成的搜索字段,当用户键入名称时,结果显示在下拉列表中 这一切都很好,并显示了它应该显示的数据 我正在等待使每个结果成为一个链接,但是,当结果显示时,用户可以点击正确的名称,它将带他们到他们的个人资料 请参见下面的脚本:PHP MySQL自动完成,php,mysql,search,Php,Mysql,Search,我有一个自动完成的搜索字段,当用户键入名称时,结果显示在下拉列表中 这一切都很好,并显示了它应该显示的数据 我正在等待使每个结果成为一个链接,但是,当结果显示时,用户可以点击正确的名称,它将带他们到他们的个人资料 请参见下面的脚本: <input type='text' id=employees class='form-control' size="80" placeholder="Search Employees by first or last name"> 在选择了正确的用户
<input type='text' id=employees class='form-control' size="80" placeholder="Search Employees by first or last name">
在选择了正确的用户后,我希望该用户被定向到page.php?id=$employee\u id
这可能吗
JavaScript
<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
<script>
$(function() {
$( "#employees" ).autocomplete({
source: 'search.php'
});
});
</script>
JavaScript
<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
<script>
$(function() {
$( "#employees" ).autocomplete({
source: 'search.php'
});
});
</script>
$(函数(){
$(“#员工”).autocomplete({
来源:“search.php”
});
});
根据要求:
PHP:
JavaScript:
<script>
$( "#employees" ).autocomplete({
source: 'search.php',
select: function( event, ui ) {
window.location.href = 'page.php?id='+ui.item.id;
}
});
</script>
$(“#员工”).autocomplete({
来源:“search.php”,
选择:功能(事件、用户界面){
window.location.href='page.php?id='+ui.item.id;
}
});
用console.log代替位置更改:在这里,您可以使用JQuery UI库在自动完成搜索中进行导航PHP和Mysql中的自动完成搜索。以下是工作代码: HTML格式:
<form>
<input id="dd_user_input" class="search_form" type="text" value="Type your Input Here"/>
</form>
此处提到位置href,因此用户可以单击此链接进行导航。在这里,您可以通过JqueryUI获取getUrl的数据,该数据由查询填充。作为参考,您可以选择:使用$row['id']作为数组索引,而不是'value'。然后在客户端分离这些信息。发布JavaScript代码以获取进一步说明。不要使用不推荐使用的
mysql.*
函数。从PHP5.5开始,它们就被弃用了,从PHP7开始,它们就被完全删除了。改用PDO或MySQLi。你也很容易受到SQL注入攻击,应该使用预先准备好的语句(可以与PDO和MySQLi一起使用)。@colburton-谢谢,你能在回答中告诉我我该怎么做吗?警告:如果你只是在学习PHP,请不要使用接口。它是如此可怕和危险,以至于在PHP7中被删除。替换类和指南类说明了最佳实践。您的用户参数不存在,并且存在可利用的参数。谢谢@tadman-但是您对我的问题有什么回答吗?谢谢,我已经在问题中添加了JavaScript是jQuery吗?抱歉是的,是jQuery。更新的问题感谢更新,但是它似乎不起作用,现在下拉列表中没有显示任何内容。您注意到了吗,我已经改回“value”,因为jQuery在这里期望的就是这个。
$(function() {
$("#dd_user_input").autocomplete({
source: "global_search.php?cityId=28",
minLength: 2,
select: function(event, ui) {
var getUrl = ui.item.id;
if (getUrl != '#') {
location.href = getUrl;
}
},
html: true,
open: function(event, ui) {
$(".ui-autocomplete").css("z-index", 1000);
}
});
});