expression régulier Téléphone

Eléphant du PHP | 257 Messages

20 déc. 2011, 14:01

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;
}

Eléphant du PHP | 257 Messages

20 déc. 2011, 14:48

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;
	     }

Eléphant du PHP | 257 Messages

20 déc. 2011, 14:49

Résolut

Eléphant du PHP | 171 Messages

20 déc. 2011, 20:25

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.
Le bon jugement s'apprend par l'expérience qui s'acquiert en partie par le mauvais jugement.

Eléphant du PHP | 257 Messages

21 déc. 2011, 00:24

quel serait la modification stp?

Eléphant du PHP | 257 Messages

21 déc. 2011, 00:32

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

Eléphant du PHP | 257 Messages

21 déc. 2011, 01:12

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;
	     }