Page 1 sur 1

Posté : 21 janv. 2008, 23:23
par Fab
Bonsoir tout le monde.

J'ai un petit problème avec une page HTML, il faut que je rentre une date au format "jj/mm/aaa", et quand je rentre "10/03/2008", ca me retourne une erreur comme quoi le format n'est pas bon :x
function verif_date(input)
{
var regex = new RegExp("[/]");
var date = input.split(regex);
var nbJours = new Array('',31,28,31,30,31,30,31,31,30,31,30,31);
var result = true;

if ( date['2']%4 == 0 && date['2']%100 > 0 || date['2']%400 == 0 )
nbJours['2'] = 29;

if( isNaN(date['2']) )
result=false;

if ( isNaN(date['1']) || date['1'] > 12 || date['1'] < 1 )
result=false;

if ( isNaN(date['0']) || date['0'] > nbJours[Math.round(date['1'])] || date['0'] < 1 )
result=false;

return result;
}


function controle (formulaire){
var message = "";
if (formulaire.nom.value == "" ) { message = message + "\t- votre nom.\n"; }
if (formulaire.prenom.value == "") { message = message + "\t- votre prénom.\n"; }
if (formulaire.naissance.value != "" )
{
  if (!verif_date(formulaire.naissance.value)) {message = message + "\t- votre date de naissance au format jj/mm/aaaa\n"; } 
}
if (verifiermail(formulaire.email.value) == false) {message = message + "\t- une adresse email valide.\n"; }

if ((formulaire.date1.value == "" )||(formulaire.date2.value == "" )) {message = message + "\t- vos dates de disponibilités.\n"; } 
else
  {
  if ( (!verif_date(formulaire.date1.value)) || (!verif_date(formulaire.date2.value)) ) {message = message + "\t- vos dates de disponibilités au format jj/mm/aaaa\n"; } 
  }

if ( false == checkExtension('cv') ) { message = message + "\nVotre c.v. doit être au format txt, doc, rtf ou pdf uniquement.\n"; }
if ( false == checkExtension('lm') ) { message = message + "\nVotre lettre de motivation doit être au format txt, doc, rtf ou pdf uniquement.\n"; }

if (message != "")
{
  message = "Veuillez saisir les champs suivants :\n\n" + message;
  alert (message);
  return false;
}
return true;
}
J'ai mis en gras le passage incriminé...
Sachant qu'il faut que je rentre 2 dates: "date1" et "date2"

Si une âme charitable se sentirai de me dire ce que je dois mettre pour passer au travers des mailles du filet qui m'empêchent de valider ce formulaire, je lui serai éternellement reconnaissant ^^

Merci

Posté : 21 janv. 2008, 23:27
par joys
Si t'as un peu de temps,je m'y pencherai demain matin car la trop tard alors dodo!!!

Posté : 21 janv. 2008, 23:28
par Fab
Merci Alex, ca serait cool ;)

Posté : 21 janv. 2008, 23:37
par Fab
Bon, je suis vraiment un gros Geek (je dis ca pour faire plaisir à CAD ^^)

J'ai trouvé l'erreur, en fait le code fait la vérification des 2 dates dans le "if", ce qui fait que si je mets 2 dates différentes, le test est FAUX...
if ( (!verif_date(formulaire.date1.value)) || (!verif_date(formulaire.date2.value)) )
J'ai donc feinté en mettant 2 fois la même date.
Le type aurait dû créer 2 variables, une pour tester la date1, une pour la date2, et faire le test "if" sur ces 2 variables...
var1=verif_date(formulaire.date1.value)
var2=verif_date(formulaire.date2.value)
if( !var1 || !var2 ) etc, etc...
Trop con le mec!

Alex, dis moi si je raconte des conneries, mais en tout cas ma feinte à marché :P

Posté : 21 janv. 2008, 23:40
par joys
Ca m'a l'air bon...

Posté : 21 janv. 2008, 23:41
par Fab
Lol

en fait je suis un gros con...

Je mettais 31/09/2008

Sauf qu'en septembre, il n'y a que 30 jours ^^

Quel nul :P

Posté : 22 janv. 2008, 07:28
par jmi
Juste une question comme ca, c'est quoi comme langage ?

Posté : 22 janv. 2008, 09:15
par vince
en fait je suis un gros con...
:-° et tu en doutais ... :-°

$=)

++ Vince