Page 1 sur 1

boucle for dans un form-select

Posté : 05 oct. 2012, 14:58
par macplus
Bonjour,
Je veux dans un formulaire afficher un champs select proposant les 7 dernier jours (jour courant compris)
J'arrive bien à sortir le résultat avec ma boucle hors formulaire, mais dès que j'intègre ma boucle à ma balise select, il ne m'affiche plus que les 6 derniers jours, cachant le jour courant.
Hors, si je vais voir le code source dans mon navigateur, le jour courant est bien présent dans ma balise select...

Si vous pouviez jeter un petit coup d'oeil?
function date_fr($date)
{
	$date=str_replace ("Monday","Lundi",$date);
	$date=str_replace ("Tuesday","Mardi",$date);
	$date=str_replace ("Wednesday","Mercredi",$date);
	$date=str_replace ("Thursday","Jeudi",$date);
	$date=str_replace ("Friday","Vendredi",$date);
	$date=str_replace ("Saturday","Samedi",$date);
	$date=str_replace ("Sunday","Dimanche",$date);
	
	$date=str_replace ("January","Janvier",$date);
	$date=str_replace ("February","Février",$date);
	$date=str_replace ("March","Mars",$date);
	$date=str_replace ("April","Avril",$date);
	$date=str_replace ("May","Mai",$date);
	$date=str_replace ("June","Juin",$date);
	$date=str_replace ("July","Juillet",$date);
	$date=str_replace ("August","Aout",$date);
	$date=str_replace ("September","Septembre",$date);
	$date=str_replace ("October","Octobre",$date);
	$date=str_replace ("November","Novembre",$date);
	$date=str_replace ("December","Decembre",$date);
	return ($date);
} 
echo "<FORM><SELECT name='fonction'";
for($time=0; $time<(86400*7); $time+=86400)
{
$jour = date_fr($date=date('l d/m/Y', time()-$time));
echo "<OPTION VALUE=" .$jour. ">" .$jour. "</OPTION>";
	}
	
echo "</SELECT>";
echo "<input type=text name='heure'> H <input type=text name='minutes'></FORM>";
Merci à vous

Re: boucle for dans un form-select

Posté : 06 oct. 2012, 13:57
par sadeq
Bonjour,
Il manque une > pour fermer le <select .
Et ton HTML ne respecte pas la norme xHTML au niveau des valeurs d'attributs devant être entre guillemets. Les noms des balises doivent aussi être en minuscule.

Corrigé:
echo '<form><select name="fonction">';
for($time=0; $time<(86400*7); $time+=86400)
{
  $jour = date_fr($date=date('l d/m/Y', time()-$time));
  echo '<option value="' .$jour. '">' .$jour. '</option>';
 }
echo '</select>';
echo '<input type="text" name="heure" /> H <input type="text" name="minutes" /></form>';

Resolu: boucle for dans un form-select

Posté : 08 oct. 2012, 09:25
par macplus
Bonjour Sadeq,

Fautes d'inattention... Désolé de t'avoir fait passé du temps à me lire pour si peu...

Je vais me copier 50x relire mon code avant de poster.

bonne journée :)