2013-04-02 1 views
2

Im utilisant osclass pour un site Web de petites annonces locales et je suis confronté au problème suivant. J'ai besoin d'importer 12 régions et 7000 villes/villages.osclass liste déroulante Villes basée sur la région Sélectionnez

Dans le main.php im en utilisant une barre de recherche horizontale avec des champs de recherche plein texte, catégories (déroulant), les régions (menu déroulant), Ville (menu déroulant), Prix max (texte) et min Prix (texte)

pour les régions et les villes im en utilisant le code 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 }?> 

le problème est que le code ci-dessus apporte toutes les villes lorsque les charges de page et ne vérifie pas quelle région est sélectionné en premier. Cela signifie que la liste déroulante de la ville sera remplie avec 7000 villes/villages au chargement de la page.

J'ai essayé de supprimer les lignes

<?php foreach($aCities as $City) { ?> 
<option value="<?php echo $City['s_name'] ; ?>"><?php echo $City['s_name'] ; ?></option> 
<?php }?> 

donc quand chargement de la page, le menu déroulant de la ville est vide, mais je ne sais pas comment remplir le menu déroulant avec les villes dépendent de la région sélectionnée.

Répondre

Questions connexes