Page 1 sur 1

preg_match aucun insertion dans ma base

Posté : 27 déc. 2011, 01:28
par pacphil
bonjour je fait un contrôle avec preg_match rien soit l'insert dans ma table zéro et quand je tape un numéro erronée cela me dis qu'il est faut cela est correct pour les erreur c'est dans l'insertion la variable téléphone ne passe pas complément
//contrôle du numéro de téléphone//
$phone = $telephon_m;
if (preg_match('/\(?\d{3}\)?[-\s.]?\d{2}[-\s.]\d{2}[-\s.]\d{2}/x', $phone)) {
  $phone=TRUE;
} else {
    echo'<div align="center"><b>Votre numé&eacute;ro de t&eacute;l&eacute;phone est faux </b><br /><br />
	     <a href="javascript:history.go(-1)"><b>Retour au formulaire</b></a></div>';
	include("sources/bas.php");
	return FALSE;
}

Re: preg_match aucun insertion dans ma base

Posté : 27 déc. 2011, 09:58
par Mazarini
Bonjour,

Si le controle marche, ce n'était pas la peine de nous mettre le code du controle. Le code de l'insert était plus utile.

Si tu utilise $phone pour l'insert, pas étonnant que ca ne marche pas puisque tu écrases la valeur.

Re: preg_match aucun insertion dans ma base

Posté : 27 déc. 2011, 11:44
par pacphil
bonjour c'est ma mise a niveau des information d'un membre voilà quand je le fait avec !ereg cela fonction super.

voila le code !ereg
if(@!ereg("^((/([0-9]{3}.) ?)|([0-9]{2}.))?[0-9]{2}.[0-9]{2}$" || "^((/([0-9]{2}.) ?)|([0-9]{3}.))?[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;
	     }
code update
$sql = "UPDATE infoscomptes SET nom='".$nom_m."', prenom='".$prenom_m."',
                              adresse='".$adresse_m."', numero='".$numero_m."',
							  boite='".$boite_m."', ville='".$ville_m."',
							  cp='".$codep_m."', telephon='".$telephon_m."',
							  gsm='".$gsm_m."', fax='".$fax_m."', site='".$site_m."'  WHERE nom='$pseudom'"; 

Re: preg_match aucun insertion dans ma base

Posté : 27 déc. 2011, 13:56
par pacphil
bonjour voilà la solutions
//contrôle du numéro de téléphone//	
$motif ='/\(?\d{3}\)?[-\s.]?\d{2}[-\s.]\d{2}[-\s.]\d{2}/x';
if(!preg_match($motif,$telephon_m))
{
    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("cssstyle/bas.php");
}
else{
	$telephon_m;
}

Re: preg_match aucun insertion dans ma base

Posté : 27 déc. 2011, 14:02
par pacphil
double format

cela ne fonction pas
//contrôle du numéro de téléphone//	
$motif ='/\(?\d{3}\)?[-\s.]?\d{2}[-\s.]\d{2}[-\s.]\d{2}/x' || '/\(?\d{2}\)?[-\s.]?\d{3}[-\s.]\d{2}[-\s.]\d{2}/x';
if(!preg_match($motif,$telephon_m))
{
    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("cssstyle/bas.php");
}
else{
	$telephon_m;
}
	

Re: preg_match aucun insertion dans ma base

Posté : 27 déc. 2011, 15:43
par pacphil
la solution =D>
//contrôle du numéro de téléphone//	
$motif ='/^(\d{2}[-\s.]\d{3}|\d{3}[-\s.]\d{2})([-\s.]\d{2}){2}$/';
if(!preg_match($motif,$telephon_m))
{
    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("cssstyle/bas.php");
		 $modif=1;
         return FALSE;			 
}
else{
	$telephon_m;
}