Boucle pour select option

Résolu
Bonjour,
Je tourne depuis des heures sur une boucle pour afficher une valeur sélectionnée.
Dans le la boucle j'affiche les années en commençant par l'année encours en décrémentant les années jusqu'en 1988.
dans une requête je récupère une année d'entrée ($entree) par exemple 2015. Je veux afficher dans <select> l'année 2015
<select name="dateentree">
	<?php	
		for ($i = date('Y'); $i >= 1988; $i--) {   echo "\t",'<option value="', $i ,'" if ($entree == $i){ echo 'selected = "selected"';}>', $i ,'</option>',"\n";
		}					
	?>

Le problème se situe au niveau de echo 'selected="selected"'
Merci d'avance

Configuration: Windows / Chrome 80.0.3987.87

1 réponse

  1. Contributeur
    bonjour, n'as-tu pas oublié de décrire le problème? as-tu un message d'erreur, un résultat inattendu, ...?
    1. Bonjour,
      Le problème est que rien ne s'affiche. Voilà le message comme je l'ai décris
      "Parse error: syntax error, unexpected 'selected' (T_STRING), expecting ',' or ';' in C:\Weblocal\Sites\Jumelage\fr\connexion\comodmember.php on line 196"

      la ligne 196 de la boucle for est :
      echo "\t",'<option value="', $i ,'" if ($entree == $i){ echo 'selected = "selected"';}>', $i ,'</option>',"\n";
      
    2. Contributeur
      @philip51moi j'essaierais plutôt:
      echo "\t",'<option value="', $i ,'" ';
      if ($entree == $i){ 
      	echo ' selected = "selected" ';
      }
      echo '>', $i ,'</option>',"\n";
    3. @yg_beJe n'avais pas pensé à décomposer . ça marche !!
      Merci