Добрый день, как правильно реализовать поиск по городам ? что бы человек выбрал города из списка, и город подставлялся в примерно такой формат
https://мойсайт.рф/москва из того что у меня получилось
$(function(){
$('.who').bind("change keyup input click", function() {
if(this.value.length >= 2){
$.ajax({
type: 'post',
url: "chunk/seocity.php", //Путь к обработчику
data: {'referal':this.value},
response: 'text',
success: function(data){
$(".search_result").html(data).fadeIn(); //Выводим полученые данные в списке
}
})
}
})
$(".search_result").hover(function(){
$(".who").blur(); //Убираем фокус с input
})
//При выборе результата поиска, прячем список и заносим выбранный результат в input
$(".search_result").on("click", "li", function(){
var s_user = $(this).text();
$(".who").val(s_user).attr('disabled', 'disabled'); //деактивируем input, если нужно
$(".search_result").fadeOut();
var urlSearch = s_user.replace(/\s+/g, '').toLowerCase();
document.location.href = '/' + urlSearch + '/';
console.log(s_user);
})
})
сам обработчик
<?php
define("DB_HOST","localhost");
define("DB_NAME","tutlogin"); //Имя базы
define("DB_USER","user"); //Пользователь
define("DB_PASSWORD","udJYtC*6"); //Пароль
define("PREFIX",""); //Префикс если нужно
$mysqli = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
$mysqli -> query("SET NAMES 'utf8'") or die ("Ошибка соединения с базой!");
if(!empty($_POST["referal"])){ //Принимаем данные
$referal = trim(strip_tags(stripcslashes(htmlspecialchars($_POST["referal"]))));
$db_referal = $mysqli -> query("SELECT * FROM `geo_city`".PREFIX."search WHERE name LIKE '%$referal%'")
or die('Ошибка №'.__LINE__);
while ($row = $db_referal -> fetch_array()) {
echo "\n<li>".$row["name"]."</li>"; //$row["name"] - имя таблицы
}
$output = $modx->runSnippet('send',array());
}
мне нужно хранить город в куках, и и приписывать город в адресной строке