jQuery UI Autocomplete を使用して、データベースで利用可能な結果を表示しています。私のウェブサイトは不動産のリスト用で、検索フォームの「都市」という名前のフィールドの下で使用しているため、同じ都市に 500 の物件がリストされている場合、私のフィールドにはこの都市の名前が 500 回表示されます。
これをブロックして、同じ結果を一度だけ表示できるようにする方法はありますか?
これが私のPHPファイルです:
<?php
$mysqli = new mysqli('localhost', 'aliicomb_joombd', 'xxxxxxxx', 'aliicomb_joombd');
$text = $mysqli->real_escape_string($_GET['term']);
$query = "SELECT field_63 FROM jbd_joomd_type15 WHERE field_63 LIKE '%$text%' ORDER BY field_63 ASC";
$result = $mysqli->query($query);
$json = '[';
$first = true;
while($row = $result->fetch_assoc())
{
if (!$first) { $json .= ','; } else { $first = false; }
$json .= '{"value":"'.$row['field_63'].'"}';
}
$json .= ']';
echo $json;
?>
そして私のJavascript:
<script type="text/javascript">
$(document).ready(function()
{
$('#field_63').autocomplete(
{
source: "city.php",
minLength: 3
});
});
</script>