Validation numéro de téléphone

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Validation numéro de téléphone

Re: Validation numéro de téléphone

par moogli » 22 mars 2013, 01:02

Le sujet n'a que six ans ....

Re: Validation numéro de téléphone

par cachouet » 21 mars 2013, 12:13

tu peux aussi faire en html dans ce genre la :
<label for = "Tel">Telephone : </label><input type = "tel" name = "Tel" id = "Tel" pattern="^[0-9]{10}$"/>

Re: Validation numéro de téléphone

par anas » 21 mars 2013, 00:35

$Syntaxe='#^0[5,6]([0-9]{2}){3}$#';

par Sarawak » 22 oct. 2006, 09:35

Merci à tous les deux !!

Cela fonctionne parfaitement.
Je garde sous le coude, le str_replace() car pour le moment cette info n'est pas stockée en base.

Je cloture la sujet

par Ripat » 22 oct. 2006, 06:24

Salut,
Je suis pas un spécialiste de regex mais ceci devrait fonctionner :
$format_tel = "#^(\d{2}[ \.]){4}\d{2}$#"; 
Pas mal pour un non spécialiste auto-déclaré! :wink:

Je rendrais juste la classe de caractères optionnelle pour valider les numéros "pleins".

^(\d{2}[ .]?){4}\d{2}$

En passant, il n'est pas indispensable d'échapper le point dans une classe de caractères. Les seuls caractères spéciaux et méta caractères qui doivent être échappés sont: les ^ \ ] -. Et encore, si les deux derniers sont situés juste derrière les crochets de la classe, ça passe: [[abcd] et [abcd[] sont tous deux valides et équivalent à [ab\[cd]

Sinon, l'alternative classique est de d'abord supprimer tous les caractères indésirables avec un str_replace() et ensuite tester avec un simple is_numeric(). Les avantages de cette deuxième méthode sont qu'elle sera sans doute plus rapide à l'exécution et ensuite, si tu mets le tél. en bdd, tous tes n° seront normalisés.

par Truc » 21 oct. 2006, 23:24

Salut,
Je suis pas un spécialiste de regex mais ceci devrait fonctionner :
$format_tel = "#^(\d{2}[ \.]){4}\d{2}$#"; 
un groupe de 4 fois 2 chiffres suivis d'un espace ou d'un point => (\d{2}[ \.]){4}
puis un dernier goupe de 2 chiffres => \d{2}

Validation numéro de téléphone

par Sarawak » 21 oct. 2006, 22:09

Bonsoir,

Voilà, je poursuis dans la mise à jour de formulaires existant, et je souhaiterais ajouter un contrôle sur les numéro de téléphone saisis.

J'ai ajouté un test permettant de vérifier si la zone est numérique et de longueur 10 carctères
  $format_tel = "#^\d{10}$#"; 
if (!(preg_match($format_tel,$tel)))
Cepedant, je souhaiterais pouvoir autoriser ces formes de saisie :
01 01 01 01 01
ou
01.01.01.01.01

Existe t'il une solution ?

Merci