retour exit d'une fonction
Bonjour à toutes et tous
ci-dessous une partie de code simplifiée où je teste chaque données qui vont rentrer dans la bdd avec une expression régulière
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
if(preg_match ($tab_filtre["nom"], $_POST['nom'] )){
$NOM = $_POST["nom"];
if(preg_match ($tab_filtre["prenom"], $_POST['prenom'] )){
$PRENOM = $_POST["prenom"];
ICI TRAITEMENT DES DONNEES
}else{
echo "erreur de filtrage prenom ";echo'<br/>';
}
}else{
echo "erreur de filtrage nom ";echo'<br/>';
}
} |
Je voudrais remplacer tous ces tests successifs par une fonction ci-dessous
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
$tab_filtre = array(
"nom" => "#^[A-Z]*[\' \-A-Z]*[A-Z]$#",
"prenom" => "#^[A-Z][a-zà-ÿ]*([- ][A-Z][a-zà-ÿ]*)*$#",
"adresse" => "#(A-Za-zà-ÿ0-9\-\' ,.)*#",
"Code_Postal"=>"#[0-9]{5}#",
"MAIL"=> "#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#",
"mdp"=> "#[0-9]{5,10}#",
"VILLE"=> "#^[A-Z]*[\' \-A-Z]*[A-Z]$#",
"tel"=> "#^0[1-9] ([0-9]{2} ){3}[0-9]{2}$#",
"date"=> "#^([0-9]{2}\/){2}[0-9]{4}$#",
"key_confirm"=>"#[0-9]{14}#",
"Avoir"=>"#^[0-9]*.?[0-9]{0,2}$#",
);
function verif($str_test){
global $tab_filtre;
if(preg_match ($tab_filtre[$str_test], $_POST[$str_test])){
return $_POST[$str_test];
}else{
exit("erreur ".$str_test);
}
} |
Donc à la place du premier code j'aurais:
Code:
1 2 3 4
|
$NOM =verif("nom");
$PRENOM =verif("prenom");
ICI TRAITEMENT DES DONNEES |
Mais bien sûr ceci ne fonctionne pas en cas d'erreur $NOM= erreur nom qui serait rentré dans ma base.
comment traiter l'exit de cette fonction de verif