-ZN-
mercredi 19 mai 2004 à 17:41
Essayons d'aborder ton probleme sous un autre angle:
Tu peux sinon utiliser des combo boxes html, tu verifies le contenu en Javascript ...
attends je dois avoir ca dans ma bibliotheque
CODE
function validDate(day,month,year)
{
indic=0
if ( month=="" || day=="" || year=="")
{indic=1}
if ( (month==4 || month==6 || month==9 || month==11) && day == 31) // 30 days months
{indic=1}
if (month==2 && (year % 4)!=0 && day > 28) // non bissextile
{indic=1}
if (month==2 && (year % 4)==0 && day > 29) // bissextile
{indic=1}
return(indic)
}
Si indic==0 ta date est valide! sinon elle est fausse, tu ne lances pas ton form.submit() mais un alert("veuillez modifier la date svp")
Puis tu changes le format de ta date avec une autre fonction Javascript du style:
CODE
function returnDate(day, month, year)
{
myDate= (year + "-" + month + "-" + day)
return myDate
}
tu stockes cette valeur dans une variable de type "hidden"
lorsque tu submit() ton formulaire la date est prete a etre stockee dans ta base mysql
puis dans l'autre sens si tu veux convertir une date mysql en language comprehensible (arf) tu utilises 2 p'tites fonctions php du style:
CODE
function convertMonthFormat($m)
{
if($m==1){ return "Jan";}
if($m==2){ return "Feb";}
if($m==3){ return "Mar";}
if($m==4){ return "Apr";}
if($m==5){ return "May";}
if($m==6){ return "Jun";}
if($m==7){ return "Jul";}
if($m==8){ return "Aug";}
if($m==9){ return "Sep";}
if($m==10){ return "Oct";}
if($m==11){ return "Nov";}
if($m==12){ return "Dec";}
}
//Changes the date format yyyy-mm-dd -> dd mmm yyyy
function convertDate($myDate)
{
list($year, $month, $day) = split("-", $myDate, 3);
$textMonth=convertMonthFormat($month);
$newDate=$day." ".$textMonth." ".$year;
return $newDate;
}
Voili voilou, attention c'est du code 100% maison y'a p'tet des erreurs
bon courage dans ton aprentissage!