traversbourquin
Messages postés16Date d'inscriptionsamedi 11 octobre 2003StatutMembreDernière intervention26 novembre 2004
-
29 oct. 2004 à 21:11
dircom13
Messages postés10Date d'inscriptionjeudi 20 janvier 2005StatutMembreDernière intervention11 avril 2009
-
12 mai 2011 à 00:20
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
on renvoi au champs précédent
- FormActif = valant nom du formulaire
- InputActif = valant id du champs précédent
S'il y a plus simple je suis preneur
dircom13
Messages postés10Date d'inscriptionjeudi 20 janvier 2005StatutMembreDernière intervention11 avril 2009 7 mai 2011 à 23:01
Bonsoir,
Je prépare le site de notre société et dans un calculateur de pénalités pour non paiement à l'échéance (3 méthodes en France) et je veux utiliser le script de traversbourquin.
Question 1 :
- comment conserver le focus à l'input à l'origine de l'erreur ?
J'ai trouvé ceci :
document.getElementById('date9').focus();
avec date9 l'id de l'input mais ne fonctionne pas
Question 2 :
- Aimant bien citer mes sources mais n'étant pas un "pro" que dois-je faire figurer et ou ?
A vous lire et merci
blacknaske
Messages postés4Date d'inscriptionjeudi 19 novembre 2009StatutMembreDernière intervention23 mars 2010 23 mars 2010 à 16:35
slt je cherche un script qui permet de voir si l'utilisateur est majeur ou non.pour savoir par la suite si (dans le cas d'une réservation d'un restaurant)l'internaute peux ou non consommer de l'alcool
le formulaire :
1page de réservation pour un repas une personne
Au final envoyer un formulaire correct:
a)première partie(coordonnées)
-nom,prénom
-date de naissance valide
-date de réservation futur + heure
b)choix des menus
3 types de menu
1)formule 1 12€ plat et dessert ((désactive entrée)
2)formule 2 18€ entrée +plat + dessert
3)A la carte(liste déroulante,entrée,menu,dessert)
c) choix des boissons
Boissons
soit sans alcool gratuit
vin du patron 5€
selection vin 10€
Apero et digestif 2,5€
Si personne mineur,nepeut pas choisir les boisons ce sera sans alcool et pas de digestif appero
Si la datr de l'anniverssaire == date de réservation apero offert d'office
Si possible calcule duprix en temps réel
#######################################################################
bouton envoyer (uniquement possible si tt est rempli correctement)
voila merci pour toute aide
cs_cathy1
Messages postés3Date d'inscriptionvendredi 27 mai 2005StatutMembreDernière intervention11 décembre 2009 11 déc. 2009 à 09:26
Bonjour,
Je cherchais un moyen de valider une date pour mon formulaire et je suis tombée par hasard sur ce script. Je tenais à féliciter l'auteur car le script fonctionne à merveille et est très facile à adapter.
Alors encore bravo.!!
fenodmz
Messages postés1Date d'inscriptionmardi 28 novembre 2006StatutMembreDernière intervention 1 août 2007 1 août 2007 à 14:27
Salut !
Moi aussi j'ai une autre question : et si les dates étaient séparé en trois champ : comme ceci ?
je n'ai pas de script pour tester la validité de ce formulaire. et dans la fonction "validation" il n'y a pas de test de validité de la date.
<form action="fic.php" name="formulaire" onsubmit="return validation();" method="post">
Date de création entre le,
<select name="jourcrea1" class="inputmenuderoul2"><?echo $szMenuJour?></select> / <select name="moiscrea1" class="inputmenuderoul2"><?echo $szMenuMois?></select> / <select name="anneecrea1" class="inputmenuderoul2"><?echo $szMenuAnnee?></select>,
----
Effacer <">,
Rechercher<">
</form>
Besoin d'aide d'urgence !
Merci beaucoup !
coej
Messages postés1Date d'inscriptionjeudi 4 janvier 2007StatutMembreDernière intervention23 juin 2007 23 juin 2007 à 14:54
Bonjour traversbourquin,
t'as juste oublié de verifier la date du jour. La personne qui n'est pas née est quant même validée.
Tres bien malgrés ça.
daymonns
Messages postés1Date d'inscriptionlundi 23 juin 2003StatutMembreDernière intervention14 octobre 2006 14 oct. 2006 à 13:50
Franchement très bien, c'est juste ce que je cherchais. Ni plus ni moins pas de fioritures :)
luuuuudooooo
Messages postés64Date d'inscriptionmardi 4 octobre 2005StatutMembreDernière intervention 2 août 20064 12 oct. 2005 à 15:40
Moi j'ai trouvé aussi cette fonction supere simple et facile à adapter alors merci Magidev !!!
cs_ladry
Messages postés5Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention24 juillet 2008 3 oct. 2005 à 21:28
Moi j'ai trouvé le code de Magidev niquel. Je l'ai posé dans une page, j'ai pas du tout galéré pour l'adapter.
Merci à toi.
traversbourquin
Messages postés16Date d'inscriptionsamedi 11 octobre 2003StatutMembreDernière intervention26 novembre 2004 30 oct. 2004 à 23:12
> Vérifier la date ET avertir l'utilisateur de son erreur
Très bien ! Voici donc le code ad hoc:
<script type="text/javascript">
var laDate,annee,Mois= new Array("de janvier","de février","de mars","d'avril","de mai","de juin","de juillet","d'août","de septembre","d'octobre","de novembre","de décembre"),msg="Veuillez introduire votre date au format JJ/MM/AAAA \n(par exemple : 12/02/1981)",msg1=".\nVeuillez indiquer un nombre compris entre 01 et ",msg2="Nouvelle saisie de la date";
function testDateValide(saisie) {
if (saisie == "") {alert(msg);return false;};
saisie = (saisie).split("/");
if ((saisie.length != 3) || isNaN(parseInt(saisie[0])) || isNaN(parseInt(saisie[1])) || isNaN(parseInt(saisie[2]))) {alert(msg);return false};
if ((saisie[0].length !=2) || (eval(saisie[0]) > 55) || (saisie[1].length !=2) || (saisie[2].length !=4)) {alert(msg);return false};
laDate = new Date(eval(saisie[2]),eval(saisie[1])-1,eval(saisie[0]));
annee = laDate.getYear();
if ((Math.abs(annee)+"").length < 4) annee = annee + 1900;
if ((laDate.getDate() != eval(saisie[0])) && (eval(saisie[1]<13))) {if (annee != eval(saisie[2])) {annee--};alert("Le mois "+ Mois[eval(saisie[1])-1] + " ne comporte que " + ((saisie[0]) - laDate.getDate()) + " jours en "+ annee + msg1 + (eval(saisie[0])-laDate.getDate()) + ".");return false};
if (laDate.getMonth() != eval(saisie[1]-1)) {alert("Il n'y a jamais eu " + eval(saisie[1]) + " mois dans cette année" + msg1 + "12.");return false};
return ((laDate.getDate() eval(saisie[0])) && (laDate.getMonth() eval(saisie[1])-1) && (annee == eval(saisie[2])));
}
</script>
<form name="form1" onSubmit="!testDateValide(form1.date.value)?alert(msg2):function(){}">
Date (au format jj/mm/aaaa) :
</form>
traversbourquin
Messages postés16Date d'inscriptionsamedi 11 octobre 2003StatutMembreDernière intervention26 novembre 2004 30 oct. 2004 à 16:39
D'une part, je n'ai jamais écrit que ce code était mieux que le tien.
D'autre part, il est très facile à adapter pour situer l'erreur. Il suffit simple d'insérer alert('le_type_erreur') avant chacun des 'return false'
Vérifier la date ET avertir l'utilisateur de son erreur, à savoir où il s'est trompé. Ton code je le connais et ca ne fait pas ca, ca dit seulement si c'est vrai ou non, mais le but du mien c'est de montrer ou l'utilisateur s'est trompé.
Donc avant de poster des Mieux Celui-ci ou Mieux celui-la se serait bien de lire les commentaires de codes, merci
traversbourquin
Messages postés16Date d'inscriptionsamedi 11 octobre 2003StatutMembreDernière intervention26 novembre 2004 29 oct. 2004 à 21:23
Je suis désolé ! Le copier-coller m'a joué un mauvais tour !
Voici donc le code correct :
<script>
function testDateValide(saisie) {
if (saisie == "") return false;
saisie = (saisie).split("/");
if ((saisie.length != 3) || isNaN(parseInt(saisie[0])) || isNaN(parseInt(saisie[1])) || isNaN(parseInt(saisie[2]))) return false;
var laDate = new Date(eval(saisie[2]),eval(saisie[1])-1,eval(saisie[0]));
var annee = laDate.getYear();
if ((Math.abs(annee)+"").length < 4) annee = annee + 1900;
return ((laDate.getDate() eval(saisie[0])) && (laDate.getMonth() eval(saisie[1])-1) && (annee == eval(saisie[2])));
}
</script>
<form name="form1" onSubmit="testDateValide(form1.date.value)?alert('date correcte !'):alert('date incorrecte !');">
Date (au format jj/mm/aaaa) :
</form>
traversbourquin
Messages postés16Date d'inscriptionsamedi 11 octobre 2003StatutMembreDernière intervention26 novembre 2004 29 oct. 2004 à 21:11
Beaucoup plus court et tout aussi performant :
<script>
function isDateValid(saisie) {
if (saisie == "") return false;
saisie = (saisie).split("/")
if ((saisie.length != 3) || isNaN(parseInt(saisie[0])) || isNaN(parseInt(saisie[1])) ||
isNaN(parseInt(saisie[2]))) return false
var laDate = new Date(eval(saisie[2]),eval(saisie[1])-1,eval(saisie[0]))
var annee = laDate.getYear()
if ((Math.abs(annee)+"").length < 4) annee = annee + 1900
return ((laDate.getDate() eval(saisie[0])) && (laDate.getMonth() eval(saisie[1])-1) && (annee
12 mai 2011 à 00:20
- dans le champs suivant avec :
onFocus="document.forms[FormActif].elements[InputActif].focus()"
on renvoi au champs précédent
- FormActif = valant nom du formulaire
- InputActif = valant id du champs précédent
S'il y a plus simple je suis preneur
7 mai 2011 à 23:01
Je prépare le site de notre société et dans un calculateur de pénalités pour non paiement à l'échéance (3 méthodes en France) et je veux utiliser le script de traversbourquin.
Question 1 :
- comment conserver le focus à l'input à l'origine de l'erreur ?
J'ai trouvé ceci :
document.getElementById('date9').focus();
avec date9 l'id de l'input mais ne fonctionne pas
Question 2 :
- Aimant bien citer mes sources mais n'étant pas un "pro" que dois-je faire figurer et ou ?
A vous lire et merci
23 mars 2010 à 16:35
le formulaire :
1page de réservation pour un repas une personne
Au final envoyer un formulaire correct:
a)première partie(coordonnées)
-nom,prénom
-date de naissance valide
-date de réservation futur + heure
b)choix des menus
3 types de menu
1)formule 1 12€ plat et dessert ((désactive entrée)
2)formule 2 18€ entrée +plat + dessert
3)A la carte(liste déroulante,entrée,menu,dessert)
c) choix des boissons
Boissons
soit sans alcool gratuit
vin du patron 5€
selection vin 10€
Apero et digestif 2,5€
Si personne mineur,nepeut pas choisir les boisons ce sera sans alcool et pas de digestif appero
Si la datr de l'anniverssaire == date de réservation apero offert d'office
Si possible calcule duprix en temps réel
#######################################################################
bouton envoyer (uniquement possible si tt est rempli correctement)
voila merci pour toute aide
11 déc. 2009 à 09:26
Je cherchais un moyen de valider une date pour mon formulaire et je suis tombée par hasard sur ce script. Je tenais à féliciter l'auteur car le script fonctionne à merveille et est très facile à adapter.
Alors encore bravo.!!
1 août 2007 à 14:27
Moi aussi j'ai une autre question : et si les dates étaient séparé en trois champ : comme ceci ?
je n'ai pas de script pour tester la validité de ce formulaire. et dans la fonction "validation" il n'y a pas de test de validité de la date.
<form action="fic.php" name="formulaire" onsubmit="return validation();" method="post">
Date de création entre le,
<select name="jourcrea1" class="inputmenuderoul2"><?echo $szMenuJour?></select> / <select name="moiscrea1" class="inputmenuderoul2"><?echo $szMenuMois?></select> / <select name="anneecrea1" class="inputmenuderoul2"><?echo $szMenuAnnee?></select>,
----
Effacer <">,
Rechercher<">
</form>
Besoin d'aide d'urgence !
Merci beaucoup !
23 juin 2007 à 14:54
t'as juste oublié de verifier la date du jour. La personne qui n'est pas née est quant même validée.
Tres bien malgrés ça.
14 oct. 2006 à 13:50
12 oct. 2005 à 15:40
3 oct. 2005 à 21:28
Merci à toi.
30 oct. 2004 à 23:12
Très bien ! Voici donc le code ad hoc:
<script type="text/javascript">
var laDate,annee,Mois= new Array("de janvier","de février","de mars","d'avril","de mai","de juin","de juillet","d'août","de septembre","d'octobre","de novembre","de décembre"),msg="Veuillez introduire votre date au format JJ/MM/AAAA \n(par exemple : 12/02/1981)",msg1=".\nVeuillez indiquer un nombre compris entre 01 et ",msg2="Nouvelle saisie de la date";
function testDateValide(saisie) {
if (saisie == "") {alert(msg);return false;};
saisie = (saisie).split("/");
if ((saisie.length != 3) || isNaN(parseInt(saisie[0])) || isNaN(parseInt(saisie[1])) || isNaN(parseInt(saisie[2]))) {alert(msg);return false};
if ((saisie[0].length !=2) || (eval(saisie[0]) > 55) || (saisie[1].length !=2) || (saisie[2].length !=4)) {alert(msg);return false};
laDate = new Date(eval(saisie[2]),eval(saisie[1])-1,eval(saisie[0]));
annee = laDate.getYear();
if ((Math.abs(annee)+"").length < 4) annee = annee + 1900;
if ((laDate.getDate() != eval(saisie[0])) && (eval(saisie[1]<13))) {if (annee != eval(saisie[2])) {annee--};alert("Le mois "+ Mois[eval(saisie[1])-1] + " ne comporte que " + ((saisie[0]) - laDate.getDate()) + " jours en "+ annee + msg1 + (eval(saisie[0])-laDate.getDate()) + ".");return false};
if (laDate.getMonth() != eval(saisie[1]-1)) {alert("Il n'y a jamais eu " + eval(saisie[1]) + " mois dans cette année" + msg1 + "12.");return false};
return ((laDate.getDate() eval(saisie[0])) && (laDate.getMonth() eval(saisie[1])-1) && (annee == eval(saisie[2])));
}
</script>
<form name="form1" onSubmit="!testDateValide(form1.date.value)?alert(msg2):function(){}">
Date (au format jj/mm/aaaa) :
</form>
30 oct. 2004 à 16:39
D'autre part, il est très facile à adapter pour situer l'erreur. Il suffit simple d'insérer alert('le_type_erreur') avant chacun des 'return false'
Très cordialement
30 oct. 2004 à 16:12
Vérifier la date ET avertir l'utilisateur de son erreur, à savoir où il s'est trompé. Ton code je le connais et ca ne fait pas ca, ca dit seulement si c'est vrai ou non, mais le but du mien c'est de montrer ou l'utilisateur s'est trompé.
Donc avant de poster des Mieux Celui-ci ou Mieux celui-la se serait bien de lire les commentaires de codes, merci
29 oct. 2004 à 21:23
Voici donc le code correct :
<script>
function testDateValide(saisie) {
if (saisie == "") return false;
saisie = (saisie).split("/");
if ((saisie.length != 3) || isNaN(parseInt(saisie[0])) || isNaN(parseInt(saisie[1])) || isNaN(parseInt(saisie[2]))) return false;
var laDate = new Date(eval(saisie[2]),eval(saisie[1])-1,eval(saisie[0]));
var annee = laDate.getYear();
if ((Math.abs(annee)+"").length < 4) annee = annee + 1900;
return ((laDate.getDate() eval(saisie[0])) && (laDate.getMonth() eval(saisie[1])-1) && (annee == eval(saisie[2])));
}
</script>
<form name="form1" onSubmit="testDateValide(form1.date.value)?alert('date correcte !'):alert('date incorrecte !');">
Date (au format jj/mm/aaaa) :
</form>
29 oct. 2004 à 21:11
<script>
function isDateValid(saisie) {
if (saisie == "") return false;
saisie = (saisie).split("/")
if ((saisie.length != 3) || isNaN(parseInt(saisie[0])) || isNaN(parseInt(saisie[1])) ||
isNaN(parseInt(saisie[2]))) return false
var laDate = new Date(eval(saisie[2]),eval(saisie[1])-1,eval(saisie[0]))
var annee = laDate.getYear()
if ((Math.abs(annee)+"").length < 4) annee = annee + 1900
return ((laDate.getDate() eval(saisie[0])) && (laDate.getMonth() eval(saisie[1])-1) && (annee
eval(saisie[2])))
}
</script>
<form name="form1" onSubmit="isDateValid(form1.date.value)?alert('date correcte !'):alert('date
incorrecte !');";">
Date (au format jj/mm/aaaa) :
</form>