自动建议模块

时间:2016-05-25 12:17:08

标签: php database autosuggest

我正在为我的网站搜索一个具有自动推荐功能的搜索栏。我使用php,ajax,jquery和mysql实现了这个。

现在我希望结果显示为链接,因此如果用户点击结果,它会将用户重定向到该页面。

我也想要这种格式的搜索结果:

我的代码是:

的index.php

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>Autocomplete textbox using jQuery, PHP and MySQL by CodexWorld</title>
  <link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">
  <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() {
    $( "#skills" ).autocomplete({
      source: 'search.php'
    });
  });
  </script>
</head>
<body>

<div class="ui-widget">
  <label for="skills">Skills: </label>
  <input id="skills" autofocus="">
</div>
</body>
</html>

search.php

<?php
$dbHost = 'localhost';
$dbUsername = 'root';
$dbPassword = '';
$dbName = 'search_demo';
//connect with the database
$db = new mysqli($dbHost,$dbUsername,$dbPassword,$dbName);
//get search term
$searchTerm = $_GET['term'];
//get matched data from skills table
$query = $db->query("SELECT skill,category FROM skills WHERE skill LIKE '%".$searchTerm."%' ORDER BY skill ASC");
while ($row = $query->fetch_assoc()) {
    $data[] = $row['skill'];
}
//return json data
$var = json_encode($data);
echo $var;
?>

我的数据库有三个字段idskillcategory

目前的结果是:

1 个答案:

答案 0 :(得分:0)

您有两种选择。第一个是extend the jqueryUI autocomplete widgetwidgets factory。第二个是创建自己的自动完成脚本,这实际上很简单,有利于学习。