Я использую osclass для местного сайта объявлений и столкнулся со следующей проблемой. Мне нужно импортировать 12 регионов и 7000 городов/сел.
В main.php я использую горизонтальную панель поиска с полями поиска текста, категорий (раскрывающийся список), регионов (раскрывающийся список), города (раскрывающийся список), максимальной цены (текст) и минимальной цены (текст).
Для регионов и городов я использую код в inc.search.php
<?php $aRegions = Region :: newInstance()->listAll();?>
<?php if (count($aRegions) > 0) {?>
<select name="sRegion" id="sRegion">
<option value="">Select a Region</option>
<?php foreach ($aRegions as $region) {?>
<option value="<?php echo $region['s_name'];?>"><?php echo $region['s_name'];?> </option>
<?php } ?>
</select>
<?php } ?>
<?php $aCities = City::newInstance()->listAll(); ?>
<?php if(count($aCities) > 0 ) { ?>
<select name="sCity" id="sCity">
<option value="">Select a city</option>
<?php foreach($aCities as $City) { ?>
<option value="<?php echo $City['s_name'] ; ?>"><?php echo $City['s_name'] ; ?></option>
<?php }?>
</select>
<?php }?>
Проблема в том, что приведенный выше код выводит все города при загрузке страницы и не проверяет, какой регион выбран первым. Это означает, что выпадающий список городов будет заполнен 7000 городов/сел при загрузке страницы.
Я пытался удалить строки
<?php foreach($aCities as $City) { ?>
<option value="<?php echo $City['s_name'] ; ?>"><?php echo $City['s_name'] ; ?></option>
<?php }?>
поэтому, когда страница загружается, раскрывающийся список городов пуст, но я не знаю, как заполнить раскрывающийся список городами в зависимости от выбора региона.