2013-02-20 6 views
0

J'ai une base de données d'états, de villes et de listes. Dans chaque ville, j'ai plusieurs listes. Par exemple:Remplir la liste de sélection crée des options multiples/multiples

FL => Miami => 10 annonces

Je suis en train de remplir un menu déroulant Etat avec chaque État, cependant, ma requête SQL est tiré en arrière toutes les lignes et créer des entrées multiples des Etats . Dans l'exemple ci-dessus, FL apparaît 10 fois dans la liste déroulante, car il y a 10 enregistrements dans la base de données.

Mais cela ne semble pas correct dans le menu déroulant État. Il devrait y avoir seulement 1 FL. J'espère que quelqu'un peut aider!

Voici ma question:

$squery = mysql_query("SELECT * FROM wp_postmeta WHERE wp_postmeta.post_id AND wp_postmeta.meta_key = 'state'"); 

Voici ma sortie:

<?php while($state_name = mysql_fetch_array($squery)) { ?> 
    <option value="<?php if(isset($state_name['meta_value'])) { echo state_name['meta_value']; } ?>"> 
<?php if(isset($state_name['meta_value'])) { echo $state_name['meta_value']; }?> 
    </option><?php } ?> 
+0

j'ai pu comprendre cela moi-même. Voici ma dernière requête: SELECT DISTINCT meta_value FROM wp_postmeta OERE wp_postmeta.meta_key = 'state' ORDER BY meta_value ASC "Distinct" était la commande manquante que je cherchais. Je ne peux pas répondre à ma propre question car je suis un newb. Besoin d'attendre 7 heures. – user1840142

Répondre

0

Essayez select distinct * ou select distinct meta_value plutôt que select *.

0

groupe Try de

$squery = mysql_query("SELECT * FROM wp_postmeta WHERE wp_postmeta.post_id AND wp_postmeta.meta_key = 'state' group by wp_postmeta.meta_key"); 
Questions connexes