Ecrivez simplement vos boites liste deroulante

Contenu du snippet

dans la serie j'aime pas me taper des lignes et des ligne (presque) identique,
les liste de selection sont des vraies punitions surtout quand elles sont longues et nombreuse donc .....
a la base c'est pour entrer les donnees d'un agenda

Source / Exemple :


<?php
//***********************************************
function select($nom_var,$debut,$fin,$step,$comp,$major,$minor,$txt){
	print "    <select name=\"$nom_var\" size=\"1\">\n";
	for ($loop=$debut;$loop <=$fin;$loop +=$step) {
	  if (is_array ($txt)){
	  	$option= $txt[$loop];
		}else{
		  if ($txt!="") {
		     $option=$loop.$txt;
		  }else{
		  $option=$loop;
		  }
		}
		if ($loop >= ($comp-$minor) and $loop <= ($comp+$major))  {
	    print "        <option value=\"$loop\" SELECTED>$option</option>\n";
	    }else{
	    print "        <option value=\"$loop\">$option</option>\n";
	    }
	}
	print "    </select>\n";
}
//**********************************************
// les donnees de base
$Langue="uk";
$Week=array(
    "fr"=>array("Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi"),
    "uk"=>array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday")
    );
$Mount=array(
    "fr"=>array("0","Janvier","Février","Mars","Avril","Mai","Juin","Juillet","Aout","Septembre","Octobre","Novembre","Décembre"),
    "uk"=>array("0","January","Ferbuary","March","April","May","June","July","August","September","October","November","December")
    );

print "
event start <br />\n";
$encour=time();
$select=date("w",$encour); // le jour de la semaine
 $txt =array_slice($Week[$Langue],0);
 select("jour",0,6 ,1 ,$select ,0 ,0 ,$txt );
 unset($txt);

$select=date("j",$encour); // le jour du mois
 select("day_start",1,31 ,1 ,$select ,0 ,0 ,"" );
 $txt =array_slice($Mount[$Langue],0);

$select=date("m",$encour); // le mois 
 select("mount_start",1 ,12 ,1 ,$select ,0 ,0 ,"" );

$select=date("Y"); // l'annee
 select("year_start",$select-1,$select+5 ,1 ,$select ,0 ,0 ,"" );

$select=date("G",$encour); // l'heure
 select("time_start",0 ,24,1,$select,0,0," h");

$select=date("i"); // les minutes par tranche de 5
 select("Minutes_start",0,60,5,$select,2.5,2.5," mn");

print "<hr>
event end <br />\n";
$select=date("w",$encour); // le jour de la semaine
 $txt =array_slice($Week[$Langue],0);
 select("jour",0,6 ,1 ,$select ,0 ,0 ,$txt );
 unset($txt);

$select=date("j"); // le jour du mois
 select("day_end",1,31 ,1 ,$select ,0 ,0 ,"" );
 $txt =array_slice($Mount[$Langue],0);

$select=date("m",$encour); // le mois 
 select("mount_end",1 ,12 ,1 ,$select ,0 ,0 ,"" );

$select=date("Y",$encour); // l'annee
 select("year_end",$select-1,$select+5 ,1 ,$select ,0 ,0 ,"" );

$select=date("G",$encour); // l'heure
 select("time_end",0 ,24,1,$select,0,0," h");

$select=date("i",$encour); // les minutes par tranche de 5
 select("Minutes_end",0,60,5,$select,2.5,2.5," mn");
 
print("<hr>");
?>

Conclusion :


et en plus il sait faire des preselections approchee
j'ai essayer d'etre asser claire dans mes noms de variables et la fonction est asse courte pour la comprendre facilement

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.