Du php dans une des <option> d'un <select

Boueep -  
 Boueep -
Bonjour,

J'ai créé une page dans laquelle j'ai voulu utiliser la date du jour.
Comme ceci :

$date = date("d-m-Y");

Dans cette même page, je souhaiterai pouvoir "appeler" cette date dans un <select>
Voici l'état actuel des choses :

<select name="date_effet">
<option value="-5"> -5 J 
<option value="-4"> -4 J 
<option value="-3"> -3 J 
<option value="-2"> -2 J 
<option value="-1"> -1 J 
<option value="0" selected> +0 J 
<option value="+1"> +1 J 
<option value="+2"> +2 J 
<option value="+3"> +3 J 
<option value="+4"> +4 J 
<option value="+5"> +5 J 
</option></select>

Dans la ligne <option value="0" selected> +0 J  je souhaiterai qu'apparaisse la date du jour par défaut
Et dans les lignes + ou - 1/2/3/4/5 J je souhaiterai que s'implémente automatiquement la date du jour + ou - 1/2/3/4/5 jours.

Est-ce possible SVP ?
Excusez par avance mon ignorance ... c'est vraiment pas mon domaine de prédilection :)
Merci d'avance pour votre aide.
A voir également:

6 réponses

ThEBiShOp Messages postés 8411 Date d'inscription   Statut Contributeur Dernière intervention   1 566
 
quelque chose dans ce gout là :

<select name="date_effet">
  <option value="-5"><?php echo date('d/m/Y', (time()-5*3600*24)); ?></option>
  <option value="-4"><?php echo date('d/m/Y', (time()-4*3600*24)); ?></option>
  <option value="-3"><?php echo date('d/m/Y', (time()-3*3600*24)); ?></option>
  <option value="-2"><?php echo date('d/m/Y', (time()-2*3600*24)); ?></option>
  <option value="-1"><?php echo date('d/m/Y', (time()-1*3600*24)); ?></option>
  <option value="0" selected><?php echo date('d/m/Y', time()); ?></option>
  <option value="+1"><?php echo date('d/m/Y', (time()+1*3600*24)); ?></option>
  <option value="+2"><?php echo date('d/m/Y', (time()+2*3600*24)); ?></option>
  <option value="+3"><?php echo date('d/m/Y', (time()+3*3600*24)); ?></option>
  <option value="+4"><?php echo date('d/m/Y', (time()+4*3600*24)); ?></option>
  <option value="+5"><?php echo date('d/m/Y', (time()+5*3600*24)); ?></option>
</select>


ou mieux :

<select name="date_effet">
<?php
for ($i=-5;$i<=5;$i++) {
  echo '<option value="'.$i.'">'. date('d/m/Y', (time()-$i*3600*24)).'</option>';
}
?>
</select>
0
Boueep
 
Oui merci ça à l'air de ressembler à ce que je cherche à faire depuis un bon moment tout en tournant en rond autour depuis le début.

Néanmoins, j'obtiens une erreur "Parse error: parse error, expecting `','' or `';'' in C:\Program Files\EasyPHP 3.0\www\index.php"

A la ligne
<option value="-5"><?php echo date('d/m/Y', (time()-5*3600*24)); ?></option>
Dans le 1er cas
Et à la ligne
echo '<option value="'.$i.'">'. date('d/m/Y', (time()-$i*3600*24)).'</option>';
Dans le second ....

:s
0
ThEBiShOp Messages postés 8411 Date d'inscription   Statut Contributeur Dernière intervention   1 566
 
pour ma part, je fais un copier/coller du code et je n'ai aucune erreur.
0
Boueep
 
erffff bisaroïde ça !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ThEBiShOp Messages postés 8411 Date d'inscription   Statut Contributeur Dernière intervention   1 566
 
essaye de rajouter un niveau de parenthèse :

<option value="-5"><?php echo date('d/m/Y', (time()-(5*3600*24))); ?></option>
0
Boueep
 
Toujours pareil
Je suppose que cela doit venir du fait que ce n'est surement pas formaté pour le fichier que j'ai.

Je vais regarder de plus près.
L'important pour moi étant de savoir ce que je devais mettre, et c'est le cas à présent.

Merci beaucoup de ton aide !
0