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

Fermé
Boueep - 13 janv. 2009 à 11:15
 Boueep - 13 janv. 2009 à 12:57
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.

6 réponses

ThEBiShOp Messages postés 8378 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 1 565
13 janv. 2009 à 11:25
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
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 8378 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 1 565
13 janv. 2009 à 12:17
pour ma part, je fais un copier/coller du code et je n'ai aucune erreur.
0
erffff bisaroïde ça !
0

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

Posez votre question
ThEBiShOp Messages postés 8378 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 1 565
13 janv. 2009 à 12:53
essaye de rajouter un niveau de parenthèse :

<option value="-5"><?php echo date('d/m/Y', (time()-(5*3600*24))); ?></option>
0
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