Test de numéro de téléphone international et français - HTML/CSS - Programmation
Marsh Posté le 24-07-2007 à 14:47:17
Une règle importante est de ne JAMAIS vérifier les champs relous style numéro de téléphone. Y'a PAS un gars un va le rentrer pareil. Entre le mec qui met tout à la suite, l'autre qui sépare par des espaces, un autre par des tirets, ceux qui mettent un numéro internation, ceux qui le font avec +33, d'autres avec 00 33, etc, etc.
Le mieux est de ne pas vérifier automatiquement. Les utilisateurs t'en remerciront
Marsh Posté le 24-07-2007 à 14:56:45
j'aimerais au moins vérifier que ce qui est rentré n'est pas que du texte ou bien que ce soir au moins que des numéros. J'ai fai un test comme celui ci en php, il fonctionnait très bien que ce soit pour +33 ou + 33(0) 1 ... et refusait les lettres. Mais l'expressions régulière que j'ai mise ne fonctionne pas en javascript
Marsh Posté le 25-07-2007 à 15:43:36
Si tu veux juste bloquer les lettres du côté de javascript, alors utilise une regexp de recherche de caractére en disant qu'il y a une erreur s'il en trouve une. Je pense que ça sera beaucoup plus simple que ta regexp actuelle.
Marsh Posté le 31-01-2008 à 12:38:49
FlorentG a écrit : Une règle importante est de ne JAMAIS vérifier les champs relous style numéro de téléphone. Y'a PAS un gars un va le rentrer pareil. Entre le mec qui met tout à la suite, l'autre qui sépare par des espaces, un autre par des tirets, ceux qui mettent un numéro internation, ceux qui le font avec +33, d'autres avec 00 33, etc, etc. |
+1 le tout est de bloquer les mauvais inputs que les gens s'amusent à faire des blagues avec
genre 00000 à la suite, numéro < 10 chiffres au sein de la chaine de caractères
Marsh Posté le 24-07-2007 à 14:31:13
Hi all !!
J'ai fait un formulaire dont les champs sont testé en javascript, je test donc la validité de mail, nom, prénom et téléphone. Pour les mails et téléphone j'utilise des expressions régulière, cela fonctionne pour le mail mais pas pour les téléphones...
Voici le code [quote]function verification(){
if((document.getElementById('name').value == "" )||(document.getElementById('mail').value == "" )||(document.getElementById('tel').value == "" )||(document.getElementById('pays').value == "" )){
alert ('Vous avez oublie de saisir un des champs obligatoire !\n Ce sont les champs suivi d\'une \"*\" ');
return false;
}else{
var verifMail = /^[a-zA-Z][\w\.-]*[a-zA-Z0-9]@[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]$/ ;
if (verifMail.exec(document.getElementById('mail').value) == null)
{
alert("Votre email est incorrect" );
return false;
}
else
{
return true;
}
var veifPoneFr = /^(01|02|03|04|05|06|08|09)[ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}$/;
var verifPhoneInt = /^(\(\+[0-9]{2}\))[ \.\-]?[0-9][ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}$/;
//var verifPhone = /^[0-9+() .-]{6,32}$/;
if ((verifPhoneFr.exec(document.getElementById('tel').value) == null)||(verifPhoneInt.exec(document.getElementById('tel').value) == null))
{
alert("Votre numero de telephone est incorrect" );
return false;
}
else
{
return true;
}
}
return true;
}