Bonjour,
Je cherche à verifier la validité d'une date rentrée dans un formulaire.
Voici mon code:
Colorez votre code PHP sur les forums grâce à Developpez.com<?php
if ($dateRCP=="")
{
******print ("<font color='#FA3499' face='arial'><i>Vous n'avez pas saisi la <u>date de la RCP</u>. Veuillez la compléter.</i></font><br><br>");******************
******$oubli = $oubli+1;
}
else
{
******if (isset($_POST['dateRCP']))
******{
************if (ereg("^([0-9]{2})/([0-9]{2})/([0-9]{4})$", $_POST['dateRCP'], $matches))
************{
******************$j=$matches[1];
******************$m=$matches[2];
******************$a=$matches[3];
******************if (checkdate($j,$m,$a))
******************{
************************print ("Date de la RCP : <b>$dateRCP</b>.<br><br>");******************
************************$ok = $ok+1;
******************}
******************else
******************{
************************print ("<font color='#FA3499' face='arial'>La <u>date $dateRCP</u> est invalide. Veuillez la corriger.</font><br><br>");
************************$erreur = $erreur+1;
******************}
************}
************else
************{
******************print ("<font color='#FA3499' face='arial'>Le format de la <u>date est JJ/MM/AAAA</u>. Veuillez le corriger.</i></font><br><br>");******************************
******************$erreur = $erreur+1;
************}
******}
}//fin else
?>
J'ai tester en entrant des dates invalides et il fonctionne bien. Le brobleme est que si je rentre des dates valides comme 27/01/2006 ou 31/12/2000 ou encore 28/02/2006 il considère que c'est faux. Je n'ai vais pas tester toutes les dates évidemment mais il accepte certaines.
Est-ce que quelqu'un pourrait m'eclairer.
J'ai également tester avec l'exemple dans la faq http://php.developpez.com/faq/?page=dates#date_valide mais ça donne la même chose.
Merci
Partager