2010-10-29 3 views
0

Ok J'ai la fonction suivante qui crée un menu de sélection afin qu'un utilisateur puisse choisir un état.Sélection Menu Fonction, multi-instances dans php

function state_selection() 
{ 
    $str = '<select name="state">'; 
    $states = array(
      'Alabama', 'Alaska', 'Arizona', 'Arkansas', 'California', 'Colorado', 'Connecticut', 'Delaware', 'District of Columbia', 'Florida', 'Georgia', 'Hawaii', 'Idaho', 'Illinois', 'Indiana', 'Iowa', 'Kansas', 'Kentucky', 'Louisiana', 'Maine', 'Maryland', 'Massachusetts', 'Michigan', 'Minnesota', 'Mississippi', 'Missouri', 'Montana', 'Nebraska', 'Nevada', 'New Hampshire', 'New Jersey', 'New Mexico', 'New York', 'North Carolina', 'North Dakota', 'Ohio', 'Oklahoma', 'Oregon', 'Pennsylvania', 'Rhode Island', 'South Carolina', 'South Dakota', 'Tennessee', 'Texas', 'Utah', 'Vermont', 'Virginia', 'Washington', 'West Virginia', 'Wisconsin', 'Wyoming' 
     ); 
    foreach ($states as $state_name) 
    { 
     $str .= '<option value="'.$state_name.'">'.$state_name.'</option>'; 
    } 
    $str .= '</select>'; 

    return $str; 
} 

Ma question est ... Cela fonctionne très bien s'il y a juste une sélection d'état sur cette page ... mais dans ma forme, je besoin à l'utilisateur de sélectionner plusieurs états, parfois jusqu'à 12. Comment Je change la fonction pour être capable de la réutiliser plusieurs fois dans le même formulaire ... et je l'ai toujours envoyer chaque sélection comme une variable séparée.

Répondre

0

Donnez vos <select> éléments des noms uniques:

function state_selection($num) { 
    $str = '<select name="state'.$num.'">'; 

Exemple:

<form name="form1" method="POST" action="take-form.php"> 
    Select State: <?php state_selection('1'); ?> 
    <input type="submit" value="Submit"> 
</form> 
+0

ne nécessitent que j'ai comme 15 exemplaires de cette fonction dans le code bien? – Expecto

+0

nm, c'était une question stupide – Expecto

+0

comme dans un appel de fonction séparée pour chaque instance de '