После импорта множества городов в базу перестал работать Ajax поиск по ним, почему?

После импорта всех городов России в базу данных поиск по ним перестал работать, в чем может быть причина?

HTML и Ajax:

<div class="col-sm-4">
<input type="hidden" name="city_id" id="city_id" value="4">
<input type="text" name="geo" id="geo" class="form-control" value="Бийск, Алтайский край" onfocus="if(!$(this).hasClass('error-input')){ $('#geo_tip').removeClass('hidden'); }" onblur="$('#geo_tip').addClass('hidden');"><ul class="typeahead dropdown-menu"></ul>
<div class="info-tooltip-container hidden" id="geo_tip"><div class="info-tooltip-arrow"></div><div class="info-tooltip"><p>Введите название населенного пункта и выберите местоположение из списка.</p><p>Если Ваш населённый пункт не был найден с первых введённых букв, укажите название более полно.</p></div></div>
<script type="text/javascript">
$(function(){
$('#geo').typeahead({
ajax:{
url:langPrefix+'/ajax/geo/',
timeout:500,
displayField:'name',
triggerLength:1
}
});
});
</script>
</div>


Файл Geo.php:

<?php include "init.php"; ?>
<?php
if(trim($_GET['mode'])=='ajax'){
header('Content-Type: application/json; charset=utf-8');
$result=array();
$_GET['text']=reset(explode(',', trim($_GET['text'])));
if(mb_strlen(trim($_GET['text']))>=1){
$qlim=array();
foreach($config['langs'] as $lang){
$qlim[]="(`regions`.`title_".$lang."`!='' AND `cities`.`title_".$lang."` LIKE '"._F($_GET['text'])."%')";
}
$check=mysql_query("SELECT `regions`.`title_ru` as `region_".$config['lang']."`, `cities`.`title_ru`, `cities`.`city_id`, `cities`.`url` FROM `cities`, `regions` WHERE `regions`.`region_id`=`cities`.`region_id` AND `cities`.`country_id`='".$config['country']."' AND (".implode(' OR ', $qlim).") ORDER BY `cities`.`important` DESC, `regions`.`title_".$config['lang']."` ASC, `cities`.`title_".$config['lang']."` ASC LIMIT 10;");
if(mysql_num_rows($check)){
while($city=mysql_fetch_assoc($check)){
$result[]=array('id'=>$city['city_id'], 'url'=>$city['url'], 'name'=>$city['title_ru'], 'region'=>$city['region_'.$config['lang']]);
}
}
}
echo json_encode($result);
exit;
}
?>


Заранее благодарю за помощь в поиске проблемы.
  • Вопрос задан
  • 144 просмотра
Пригласить эксперта
Ответы на вопрос 1
@I_Pavlov
Разработчик
Попробуйте создать индексы по каждому полю вида `cities`.`title_*`
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы