Page 1 sur 1

expression régulier Téléphone

Posté : 20 déc. 2011, 14:01
par pacphil
bonjour je suis en Belgique et j'ai deux format de téléphone merci de votre aide.

Je vois pas mon erreur
//contrôle du numéro de téléphone//
if(@!ereg("^((\([0-9]{3}.) ?)|([0-9]{2}.))?[0-9]{2}.[0-9]{2}$",$telephon_m) || @!ereg("^((\([0-9]{2}.) ?)|([0-9]{3}.))?[0-9]{2}.[0-9]{2}$",$telephon_m) )
			{
		echo'<script type="text/javascript">
         $("#alert1").ready(function(){
         jAlert("info", " 000.000.000 ou 00.000.00.00 ", "Format Incorrect !!");
         });
        </script>';
    echo'<br /><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
	     <center><b>Votre num&eacute;ro de t&eacute;l&eacute;phone est incorrect !!! </b><br /><br />
	     <a href="javascript:history.go(-1)"><b>Retour au formulaire</b></a></center>';
	include("sources/bas.php");
	$modif=1;
	return FALSE;
}

Re: expression régulier Téléphone

Posté : 20 déc. 2011, 14:48
par pacphil
sorry trouver la solution ;-)
if(@!ereg("^((\([0-9]{3}.) ?)|([0-9]{2}.))?[0-9]{2}.[0-9]{2}$" || "^((\([0-9]{2}.) ?)|([0-9]{4}.))?[0-9]{2}.[0-9]{2}$",$telephon_m))
			{
		echo'<script type="text/javascript">
         $("#alert1").ready(function(){
         jAlert("info", " XXX.XX.XX.XX ou XX.XXX.XX.XX ", "Format Incorrect !!");
            });
        </script>';
    echo'<br /><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
	     <center><b>Votre num&eacute;ro de t&eacute;l&eacute;phone est incorrect !!! </b><br /><br />
	     <a href="javascript:history.go(-1)"><b>Retour au formulaire</b></a></center>';
		 include("sources/bas.php");
	     $modif=1;
	     return FALSE;
	     }

Re: expression régulier Téléphone

Posté : 20 déc. 2011, 14:49
par pacphil
Résolut

Re: expression régulier Téléphone

Posté : 20 déc. 2011, 20:25
par Skw33d
Salut,

Je te conseille de te tourner vers la fonction preg_match qui est plus rapide que ereg. De plus ereg étant depuis PHP 5.3.0 une fonction déprécié.
De plus, si ton serveur est amené à évoluer, ça serait bien plus intéressant en terme de compatibilité futur. Voilà plusieurs bonnes raisons d'utiliser les fonctions PCRE au lieu de POSIX.

Re: expression régulier Téléphone

Posté : 21 déc. 2011, 00:24
par pacphil
quel serait la modification stp?

Re: expression régulier Téléphone

Posté : 21 déc. 2011, 00:32
par pacphil
le changement voilà une erreur

Warning: preg_match() [function.preg-match]: Delimiter must not be alphanumeric or backslash in C:\Program Files\EasyPHP-5.3.8.1\hb\val_profil_m.php on line 64

Re: expression régulier Téléphone

Posté : 21 déc. 2011, 01:12
par pacphil
format pas correct
if (preg_match('/\?\d{3}\?[-\s.]?\d{2}[-\s.]\d{2}[-\s.]\d{2}/x', $telephon_m)) {
  $telephon_m = true;
} else {
		echo'<script type="text/javascript">
         $("#alert1").ready(function(){
         jAlert("info", " XXX.XX.XX.XX ou XX.XXX.XX.XX ", "Format Incorrect !!");
            });
        </script>';
    echo'<br /><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
	     <center><b>Votre num&eacute;ro de t&eacute;l&eacute;phone est incorrect !!! </b><br /><br />
	     <a href="javascript:history.go(-1)"><b>Retour au formulaire</b></a></center>';
		 include("sources/bas.php");
	     $modif=1;
	     return FALSE;
	     }