ereg() obsolète, preg_match pose problème, que faire ?

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 : ereg() obsolète, preg_match pose problème, que faire ?

Re: ereg() obsolète, preg_match pose problème, que faire ?

par Genova » 30 déc. 2012, 03:11

Bonsoir,

remplacez les
ereg('machin')
par
preg_match('#machin#')
et les
eregi('machin')
par
preg_match('#machin#i')
Cordialement

Re: ereg() obsolète, preg_match pose problème, que faire ?

par pacphil » 24 déc. 2012, 13:00

voici quelque solutions
      if(!preg_match('/^[a-zA-Z]$/',$_POST['nom']))
      {
}
    
    if(preg_match('#^(([a-z0-9!\#$%&\\\'*+/=?^_`{|}~-]+\.?)*[a-z0-9!\#$%&\\\'*+/=?^_`{|}~-]+)@(([a-z0-9-_]+\.?)*[a-z0-9-_]+)\.[a-z]{2,}$#i',$_POST['email']))
      {
}
		  		  
    if(preg_match('/^(\d{2}[-\s.]\d{3}|\d{3}[-\s.]\d{2})([-\s.]\d{2}){2}$/',$_POST['telph']))
     {
}

Re: ereg() obsolète, preg_match pose problème, que faire ?

par moogli » 19 déc. 2012, 23:12

bonjour,


la solution est dans la doc ;) http://php.net/manual/fr/reference.pcre ... .posix.php



@+

ereg() obsolète, preg_match pose problème, que faire ?

par biggels » 19 déc. 2012, 18:25

salut,
en grand amateur, je suis confronté à un problème : j'ai suivi un tuto pour créer un formulaire sans rafraîchissement de la page tout fonctionne sauf que j'obtiens une erreur concernant ereg() (a priori c'est normal puisque c'est devenu il me semble) un extrait de mon code:
		if ( empty($_REQUEST['name']) ) {
		$pass = 1;
		$alert .= "<li>" . $emptyname . "</li>";
	} elseif ( ereg( "[][{}()*+?.\\^$|]", $_REQUEST['name'] ) ) {
		$pass = 1;
		$alert .= "<li>" . $alertname . "</li>";
	}
	if ( empty($_REQUEST['email']) ) {
		$pass = 1;
		$alert .= "<li>" . $emptyemail . "</li>";
	} elseif ( !eregi("^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)*(.[a-z]{2,3})$", $_REQUEST['email']) ) {
		$pass = 1;
		$alert .= "<li>" . $alertemail . "</li>";
	}
	if ( empty($_REQUEST['message']) ) {
		$pass = 1;
		$alert .= "<li>" . $emptymessage . "</li>";
	} elseif ( ereg( "[][{}()*+?\\^$|]", $_REQUEST['message'] ) ) {
		$pass = 1;
		$alert .= "<li>" . $alertmessage . "</li>";
	}

je cherche sur les internets et tombe sur l'expression preg_match, je remplace donc les ereg() mais j'obtiens toujours des erreurs.
Que faire ?, merci d'avance pour vos réponses.