Suite à un billet d’un collègue développeur (Jarodxxx), et d’un commentaire souhaitant obtenir un return, je vous propose quelques fonctions très utiles que j’utilise.
1 – Fonction qui retourne une liste déroulante (SELECT, ComboBox) :
-
/*fonction qui fabrique une combobox
-
parametres :
-
$tabs => $tableau qui contient les données a mettre dans la combo
-
$value => champ utiliser comme value
-
$text => champ a utiliser comme text
-
$comboname => nom a donner a la combo
-
$inserblank => boolean qui dit si on doit inserer une ligne blanche au debut de la combo
-
$selectedValue => valeur a selectionner dans la combo
-
$onChangeEvent => fonction javascript a appeler sur l’event ‘onChange’
-
$disabled => desactiver ou non la liste*/
-
-
function makeComboBox($tabs, $value, $text, $comboname, $insertblank=false, $selectedValue=false, $onChangeEvent=”, $disabled=false)
-
{
-
/*par defaut, combo "vide" */
-
$return = ‘<select name="’.$comboname.‘" id="’.$comboname.‘" disabled="disabled"><option value="">Empty list</option></select>’;
-
{
-
$return = ‘<select name="’.$comboname.‘" id="’.$comboname.‘"’;
-
if ($onChangeEvent != ”)
-
$return .= ‘ onChange="’.$onChangeEvent.‘"’;
-
if ($disabled)
-
$return .= ‘ disabled="disabled"’;
-
$return .= ‘>’;
-
-
if ($insertblank)
-
$return .= ‘<option value=""></option>’;
-
-
foreach($tabs as $tab){
-
//for ($i=0; $i<count($tab); $i++){
-
-
$return .= ‘<option value="’.$tab[$value].‘"’;
-
if ($selectedValue!=false)
-
if ($tab[$value] == $selectedValue)
-
$return .= ‘ selected="selected"’;
-
$return .= ‘>’.$tab[$text].‘</option>’."\n";
-
}
-
$return .= ‘</select>’;
-
}
-
return $return;
-
}
-
2 – Fonction qui retourne un Multi Select : Liste déroulante avec plusieurs choix possibles:
-
/*Gestion des combos a selection multiples
-
parametres :
-
$tab => $tableau qui contient les données a mettre dans la combo
-
$value => champ utiliser comme value
-
$text => champ a utiliser comme text
-
$comboname => nom a donner a la combo
-
$inserblank => boolean qui dit si on doit inserer une ligne blanche au debut de la combo
-
$selectedValue => valeur a selectionner dans la combo
-
$onChangeEvent => fonction javascript a appeler sur l’event ‘onChange’
-
$disabled => desactiver ou non la liste
-
$size => Nombre d’élément de la liste que l’on affiche
-
*/
-
function makeMultipleComboBox($tab, $value, $text, $comboname, $insertblank=false, $selectedValue, $onChangeEvent=”, $disabled=false, $size=5)
-
{
-
/*on recupere une combo normale, sans rien selectionner*/
-
$return = $this->makeComboBox($tab, $value, $text, $comboname, $insertblank, -1, $onChangeEvent, $disabled);
-
/*On change le type de combo*/
-
/*on parse le code html pour rajouter les selections la ou il faut*/
-
{
-
//print_r($selectedValue);exit;
-
//$tSelectedValue = split(‘,’, $selectedValue);
-
foreach ($selectedValue as $cur)
-
{
-
$return = str_replace(‘<option value="’.$cur.‘">’, ‘<option value="’.$cur.‘" selected="selected">’, $return);
-
}
-
}
-
return $return;
-
}
-
2 fonctions très utiles donc qui génèrent le code HTML.

