Page 1 sur 1

formulaire avec date (mois et année) imposée.

Posté : 12 janv. 2016, 18:17
par pmfontaine
Bonjour,
Je viens vers vous car je n'arrive pas a trouver une solution avec un formulaire ou je demande au visiteur de choisir un mois de participation sachant qu'il doit choisir au minimum le mois actuel et au maximum le mois actuel + 5 mois.
le code si dessous fonctionne en partie, mais lorsque le mois actuel ($mois_actuel) et >7, les possibilités dépassent 12 (13, 14, .... etc)
Comment puis-je faire pour que 13, 14, ..etc soit remplacé par 1, 2, ...etc ?

Code : Tout sélectionner

<label>Mois et Année de participation:</label><br /> <?php $mois_actuel = date("m"); $annee_actulle = date("Y"); if ($mois_actuel < 8) { $max_annee = $annee_actulle; } else { $max_annee = $annee_actulle + 1; } ?> <b> Mois : <input type="number" name="mois" value="<?php echo $mois_actuel; ?>" min="<?php echo $mois_actuel; ?>" max="<?php echo $mois_actuel+5; ?>"> Année : <input type="number" name="annee" value="<?php echo $annee_actulle; ?>" min="<?php echo $annee_actulle; ?>" max="<?php echo $max_annee; ?>"> </b>[/color]
Dans ce même code, je récupère dans une base Mysql les mois ou le visiteur a déjà participé pour les 6 mois a venir. Et je voudrais exclure dans les possibilités de choix du formulaire les mois ou il a déjà participé.
Est-ce que cela est possible et de quelle façon ?

J'espère mettre correctement expliqué.
Merci d'avance pour votre aide.
Patrick

Re: formulaire avec date (mois et année) imposée.

Posté : 12 janv. 2016, 22:08
par kevin254kl
Bonsoir, en testant avec un if si tu dépasses tu fais le nombredemois sélectionné moins 12, dans le if qui sera dans ton max tu regardes si le nombre de mois est supérieur à 7.

Re: formulaire avec date (mois et année) imposée.

Posté : 12 janv. 2016, 22:59
par pmfontaine
Bonsoir Kevin,
Merci pour ta réponse, mais si on fais comme tu propose, le max et plus petit que le min et du coup ça ne propose que ces deux chiffres, rien entre les deux.
Cette exemple le montre

Code : Tout sélectionner

Mois : <input type="number" name="mois" value="10" min="10" max="3">

Re: formulaire avec date (mois et année) imposée.

Posté : 12 janv. 2016, 23:02
par or 1
ce serait plus simple de mettre une liste déroulante au lieu d'une zone de texte, avec uniquement les mois qui peuvent être sélectionnés comme proposition.

Re: formulaire avec date (mois et année) imposée.

Posté : 12 janv. 2016, 23:12
par Spols
Aussi pour rapidement réduire les nombres supérieure à 12, tu peux utiliser le modulo %12
13%12 = 1
mais aussi 12%12 = 0 donc tu dois en tenir compte en commençant ton index des mois à 0

Re: formulaire avec date (mois et année) imposée.

Posté : 13 janv. 2016, 10:18
par pmfontaine
ce serait plus simple de mettre une liste déroulante
Bonjour,
Merci a tous pour votre aide. j'ai trouvé la solution avec un menu déroulant. Merci Or.
Voila le code :

Code : Tout sélectionner

<label><b>Mois et Année de participation:</b></label><br /> <?php $mois_debut = date("m"); $mois1 = $mois_debut; if ($mois_debut + 1 > 12) {$mois2 = $mois_debut - 11;} else {$mois2 = $mois_debut +1;} if ($mois_debut + 2 > 12) {$mois3 = $mois_debut - 10;} else {$mois3 = $mois_debut +2;} if ($mois_debut + 3 > 12) {$mois4 = $mois_debut - 9;} else {$mois4 = $mois_debut +3;} if ($mois_debut + 4 > 12) {$mois5 = $mois_debut - 8;} else {$mois5 = $mois_debut +4;} if ($mois_debut + 5 > 12) {$mois6 = $mois_debut - 7;} else {$mois6 = $mois_debut +5;} ?> <p> <label for="mois">mois ?</label><br /> <select name="mois" id="mois"> <option value="<?php echo $mois1;?>"><?php echo $mois1;?></option> <option value="<?php echo $mois2;?>"><?php echo $mois2;?></option> <option value="<?php echo $mois3;?>"><?php echo $mois3;?></option> <option value="<?php echo $mois4;?>"><?php echo $mois4;?></option> <option value="<?php echo $mois5;?>"><?php echo $mois5;?></option> <option value="<?php echo $mois6;?>"><?php echo $mois6;?></option> </select> </p>
Pour la deuxième partie de ma question :
Dans ce même code, je récupère dans une base Mysql les mois ou le visiteur a déjà participé pour les 6 mois a venir. Et je voudrais exclure dans les possibilités de choix du formulaire les mois ou il a déjà participé.
Est-ce que cela est possible et de quelle façon ?
Je n'ai pas la solution, mais je vais chercher et si besoin j'ouvrir un poste spècifique.
Encore merci a tous.
Patrick

Re: [RESOLU] formulaire avec date (mois et année) imposée.

Posté : 13 janv. 2016, 12:43
par Spols
Il te suffit, pour chaque option, de l'inclure dans un if et de vérifier si ce mois correspond à un mois d'exclusion venant de ta BDD