Générer une liste déroulante HTML de nombres

Rechercher

Générer une liste déroulante HTML de nombres

  • Par Emacs
  • 1 commentaire
  • 6 868 lectures
  • De Hugo HAMON
  • RSS -  Atom

Cette petite fonction permet de générer une liste déroulante de nombres en une seule ligne de code. Il suffit de lui fournir quelques paramètres obligatoires tels que son nom, la valeur de départ, la valeur d'arrivée, la valeur par défaut et quelques autres données facultatives pour obtenir une belle liste déroulante sexy.

Portion de code

<?php /** * Génère une liste déroulante de nombres * * @author Hugo HAMON <webmaster@apprendre-php.com> * @param string $name Nom de la liste déroulante * @param int $from Valeur de départ (ex: 1970) * @param int $to Valeur d'arrivée (ex: 2020) * @param int $selected Value par défaut sélectionnée * @param array $options Tableau associatif des couples attributs / valeur du tag <select> * @param string $first Première option de la liste (ex: Année de naissance) * @param int $pas Pas d'incrémentation (par défaut à 1) * @return string $html Code html de la liste déroulante * * @example *  select_numbers('mois', 1, 12, 7, array('id'=>'mois', 'onchange'=>'this.form.submit()'), 'Votre mois de naissance'); */function select_numbers($name, $from, $to, $selected=0, $options=array(), $first='', $pas=1) {   $html = '<select name="'. $name .'"';   if(is_array($options) && sizeof($options)>0) {    foreach($options as $name => $value) {      $html.= ' '. $name .'="'. $value .'"';    }  }  $html.= '>'."\n";   // Label vide  if(!empty($first)) {    $html.= "\t".'<option value="">'. $first .'</option>'."\n";  }   for($i=$from; $i<=$to; $i=$i+$pas) {    $html.= "\t".'<option value="'. $i .'"';    $html.= ($i == $selected) ? ' selected="selected"' : '';    $html.= '>'. $i .'</option>'."\n";  }   $html.= '</select>'."\n";  return $html;}?>
<?php echo select_numbers('mois', 1, 12, 7, array('id'=>'mois'),'Mois'); ?>
<select name="mois" id="mois">  <option value="">Mois</option>  <option value="1">1</option>  <option value="2">2</option>  <option value="3">3</option>  <option value="4">4</option>  <option value="5">5</option>  <option value="6">6</option>  <option value="7" selected="selected">7</option>  <option value="8">8</option>  <option value="9">9</option>  <option value="10">10</option>  <option value="11">11</option>  <option value="12">12</option></select>

Les commentaires

1. Par NOUNOU le 21/07/2011 10:42

un grand merci a vous. J'aimerai savoir comment récupérer la valeur choisi par l'utilisateur ?? cad prendre le choix et travailler avec.