begin process at 2012 05 31 12:45:41
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Débutant(e)

 > 

Problème disabled


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Problème disabled

mercredi 24 février 2010 à 09:07:28 | Problème disabled

naroco

bonjour
je créé un formulaire de collecte d'heures.
je propose au collecteur la date du jour ou une autre date via un bouton radio.
s'il s'agit d'une autre date, j'ai créé trois zones de listes (année, mois, jour)
Le problème est le suivant :

quand je sélectionne le mois, une variable $m devient paire ou impaire selon le nombre de jours dans le mois (30 ou 31 jours)
je voudrais masquer le jour 31 dans ma liste si le mois est paire (exemple : avril = 30 jours)
ci-dessous mon code :
merci d'avance
Code HTML :
$date1=$_POST['date'];
$mois=$_POST['mm'];
$jour=$_POST['jj'];
$m="paire";
?>
<form method="post" action="#"/>
<label>Aujourd'hui:</label><input type="radio" name="date" value="aujour" <?php if ($date1=="aujour"){echo 'checked="checked"';$datejour=date("yyyy-mm-dd");}?> /></br>
<label>Autre Date:</label><input type="radio" name="date" value="autre" <?php if ($date1=="autre"){echo 'checked="checked"';}?>/>
<label>ANNEE: </label><select name="aa"><option value=2010 <?php echo "selected='selected'";?>/>2010</option></select>
<label>MOIS: </label><select name="mm"><option value="01" <?php if ($mois=="01"){echo "selected='selected'";$m="impaire";}?>/>Janvier</option>
									   <option value="02" <?php if ($mois=="02"){echo "selected='selected'";$m="fev";}?>/>Février</option>
									   <option value="03" <?php if ($mois=="03"){echo "selected='selected'";$m="impaire";}?>/>Mars</option>
									   <option value="04" <?php if ($mois=="04"){echo "selected='selected'";$m="paire";}?>/>Avril</option>
									   <option value="05" <?php if ($mois=="05"){echo "selected='selected'";$m="impaire";}?>/>Mai</option>
									   <option value="06" <?php if ($mois=="06"){echo "selected='selected'";$m="paire";}?>/>Juin</option>
                                       <option value="07" <?php if ($mois=="07"){echo "selected='selected'";$m="impaire";}?>/>Juillet</option>
                                       <option value="08" <?php if ($mois=="08"){echo "selected='selected'";$m="impaire";}?>/>Aout</option>
									   <option value="09" <?php if ($mois=="09"){echo "selected='selected'";$m="paire";}?>/>Septembre</option>
									   <option value="10" <?php if ($mois=="10"){echo "selected='selected'";$m="impaire";}?>/>Octobre</option>
	                                   <option value="11" <?php if ($mois=="11"){echo "selected='selected'";$m="paire";}?>/>Novembre</option>
	                                   <option value="12" <?php if ($mois=="12"){echo "selected='selected'";$m="impaire";}?>/>Décembre</option></select>

 <label>Jour: </label><select name="jj"><option value="01" />01</option>
										<option value="02" />02</option>
										<option value="03" />03</option>
										<option value="04" />04</option>
										<option value="05" />05</option>
										<option value="06" />06</option>
										<option value="07" />07</option>
										<option value="08" />08</option>
										<option value="09" />09</option>
										<option value="10" />10</option>
										<option value="11" />11</option>
										<option value="12" />12</option>
										<option value="13" />13</option>
										<option value="14" />14</option>
										<option value="15" />15</option>
										<option value="16" />16</option>
										<option value="17" />17</option>
										<option value="18" />18</option>
										<option value="19" />19</option>
										<option value="20" />20</option>
										<option value="21" />21</option>
										<option value="22" />22</option>
										<option value="23" />23</option>
										<option value="24" />24</option>
										<option value="25" />25</option>
										<option value="26" />26</option>
										<option value="27" />27</option>
										<option value="28" />28</option>
										<option value="29" />29</option>
										<option value="30" />30</option>
										<option value="31" <?php if ($m=="paire"){echo "disabled='disabled'";}?> />31</option></select>
</form>
<br/>
mercredi 24 février 2010 à 13:47:29 | Re : Problème disabled

tpoinsot

Bonjour,

Code PHP :
<?php if ($m != "paire") { ?>
<option value="31" />31</option>
<? } ?>


Idem pour l'input.

Et tu fais quoi pour février ?

thip
mercredi 24 février 2010 à 19:30:11 | Re : Problème disabled

kohntark

Membre Club
Salut,

Je pense que tu te compliques la vie. Procéder ainsi va t'amener inévitablement à des bugs, comme celui qu'expose Tpoinsot.
PHP propose plusieurs solutions pour valider "automatiquement" les dates, mais le mieux à mon sens reste de passer par du JS. Les solutions ne manquent pas de ce côté, et certaines sont paramétrables à souhait.

Cordialement,


Kohntark -

mercredi 24 février 2010 à 19:46:25 | Re : Problème disabled

naroco

Je débute en php et je ne connais pas le javascript.
as-tu une solution en php ?
pour info j'ai simplifié mon code à l'aide d'un tableau des mois et des jours.
mercredi 24 février 2010 à 20:15:56 | Re : Problème disabled

kohntark

Membre Club
J'en profites pour re poser la question de Tpoinsot qui n'a pas eu de réponse :

Et tu fais quoi pour février ?




as-tu une solution en php ?


Il doit exister nombre de scripts tout fait sur la toile.
Si tu veux coder ça toi même regarde les possibilités de mktime() / date() (afin de valider automatiquement des dates) et la class datetime si ton hébergeur le permet.


je ne connais pas le javascript


Il y a des solutions toutes faites et relativement bien documentées qui permettent une mise en place rapide sans grandes compétences en la matière. Si tu n'as jamais touché à javascript tu risques effectivement de galérer mais le jeux en vaut la chandelle.
Par ex : http://www.dynarch.com/projects/calendar/

Cordialement,


Kohntark -

mercredi 24 février 2010 à 22:53:59 | Re : Problème disabled

tpoinsot

En général, quand on fait soi-même, on crée un tableau de 12 nombres contenant le nombre de jours par mois en utilisant la date du premier jour de chaque mois - 1. Tu suis ?
Après, on fait une brave boucle pour l'affichage.

Sinon, on remplit les 12 mois à la main et on calcule pour février en fonction de l'année (multiple de 4 - multiple de 100 + récup des multiples de 400) au cas où elle serait bissextile (si tous les mois avaient 30 jours ce serait quand même plus simple)


Cette discussion est classée dans : problème, date, jour, mois, paire


Répondre à ce message

Sujets en rapport avec ce message

Date d'il y a un mois [ par kimengumi ] Salut tout le monde !J'ai un problème qui me retourne la tête, j'essaye de trouver la date d'il y a un mois par rapport à une date donnée.C'est à dire Gestion de dates [ par tryoruda ] SalutJe souhaite quelques tuyaux pour gérer les dates :- un formulaire avec choix du jour / du mois / de l'année envoie vers un seul champ Mysql date- Pb avec Date() & mktime() [ par LordDaedalus ] BonjourJe suis en train de créer un agenda en utilisant les fonctions date() et mktime().j'utilise $Jour = Date("d",mktime(Date("h")-24*10*7)Le jour e vérification d'une date [ par vir76 ] Salut tout le monde,Je dispose de la fonction suivante pour vérifier une date : Page de vérification de date en PHP<? Gestion d'erreurs [ par stailer ] Bonjour,voici ma fonction pour transformer une date MySQL en format français :function date_france($date_saisie){ list ($an , $mois , $jour) = Besoin Aide Date MYSQL & PHP [ par Dexterage ] voila g un tit soucis au niveau dune requete sql avec la date! en effet, jai une table mysql avec un champ (date_fin) ds ma page php, jai un formulair PHP probleme de boucle avec dates [ par infosub ] Bonjour, je suis confronté à un petit problème de boucle pour ajouter plusieurs jour à une date.. le script ci-dessous calcule le nombre de jours entr Toujours a la recherche d'aide pour les dates !!! [ par nagrom_om ] Bon je rééxplique mon probleme. Je choisi une date de depart et une date d'arrivée (demande de congés) je dois calculer le nombre de jours ouvrables p traduction date [ par kenny18 ] salut,J'ai un champ type "datetime" dans une table. Je vais rechercher cette date dans mon code pour l'afficher. La date = $row[5] ci-dessous. Mon seu Calendrier / Agenda [ par kitgraphic ] Voilà j'ai un calendrier avec des évènement, tout marche bien , mais je voudrais que le jour actuel (la cellule ou il se trouve soit d'une autre coule


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,733 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales