我有旅游套餐。 许多旅游套餐都有相同的目的地/城市。
我正在尝试使用ajax实时搜索创建一个搜索框,用户可以按目的地/城市搜索。
由于许多套餐在用户搜索城市时具有相同的目的地/城市,因此根据旅游套餐会多次显示相同的城市名称。
让我们说tour pkg1, tour pkg2, tour pkg3
有纽约市。
当我们在搜索字段中输入 N 时,它会显示NY THREE times
,但如果城市相同,我只想显示一次。
标记:
<div class="ui-widget">
<label for="skills">Skills: </label>
<input id="skills">
</div>
jQuery的:
<script>
$(function() {
$( "#skills" ).autocomplete({
source: 'search.php'
});
});
</script>
的search.php:
<?php
//database configuration
$dbHost = 'localhost';
$dbUsername = 'root';
$dbPassword = '';
$dbName = 'mydb';
//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 * FROM tour_package WHERE fcity LIKE '%".$searchTerm."%' ORDER BY fcity ASC");
while ($row = $query->fetch_assoc()) {
$data[] = $row['fcity'];
}
//return json data
echo json_encode($data);
?>
和表格:
如何为许多fcity
删除相同的pkg
?
修改
如果我使用(不同)$query = $db->query("SELECT * distinct FROM tour_package WHERE fcity LIKE '%".$searchTerm."%' ORDER BY fcity ASC");
实时搜索不起作用。当我输入它时什么也没显示。