Valider une adresse email, ptit souci
Posté : 21 sept. 2006, 01:26
Bonjour,
J'ai trouvé le script suivant pour valider une adresse email et j'ai un ptit prb pour d'intégration de ce script que j'ai diviser en 2 partie que j'ai nommé et j'aimerai avoir le message d'erreur comme le reste de mes message. Mais j'aimerai biena aussi enlevé le message "echo "L'adresse e-mail est valide";" dans le seconde partie de vérif de la validité de l'email
J'ai trouvé le script suivant pour valider une adresse email et j'ai un ptit prb pour d'intégration de ce script que j'ai diviser en 2 partie que j'ai nommé et j'aimerai avoir le message d'erreur comme le reste de mes message. Mais j'aimerai biena aussi enlevé le message "echo "L'adresse e-mail est valide";" dans le seconde partie de vérif de la validité de l'email
$atom = '[-a-z0-9!#$%&\'*+\\/=?^_`{|}~]'; // caractères autorisés avant l'arobase
$domain = '([a-z0-9]([-a-z0-9]*[a-z0-9]+)?)'; // caractères autorisés après l'arobase (nom de domaine)
$regex = '/^' . $atom . '+' . // Une ou plusieurs fois les caractères autorisés avant l'arobase
'(\.' . $atom . '+)*' . // Suivis par zéro point ou plus
// séparés par des caractères autorisés avant l'arobase
'@' . // Suivis d'un arobase
'(' . $domain . '{1,63}\.)+' . // Suivis par 1 à 63 caractères autorisés pour le nom de domaine
// séparés par des points
$domain . '{2,63}$/i'; // Suivi de 2 à 63 caractères autorisés pour le nom de domaine
// test de l'adresse e-mail
if (preg_match($regex, $email)) {
echo "L'adresse e-mail est valide";
} else {
echo '<font face="verdana" size="2">L\'adresse e-mail n\'est pas valide.</font><br>';
}
J'ai essayé de l'intégrer ainsi mais cela ne marche pas
<?php
$MailTo = "[email protected]"; //adresse a laquelle sera envoyé le contenu du formulaire
$MailSubject = "Infos du formulaire du site Designsite"; //texte qui va figurer dans le champ "sujet" du email
$MailHeader = "From: e_mail\n"; //adresse email qui va figurer dans le champ "expéditeur" du email
// intégration de la 1er partie du script pour vérifer la validité de l'email
$atom = '[-a-z0-9!#$%&\'*+\\/=?^_`{|}~]'; // caractères autorisés avant l'arobase
$domain = '([a-z0-9]([-a-z0-9]*[a-z0-9]+)?)'; // caractères autorisés après l'arobase (nom de domaine)
$regex = '/^' . $atom . '+' . // Une ou plusieurs fois les caractères autorisés avant l'arobase
'(\.' . $atom . '+)*' . // Suivis par zéro point ou plus
// séparés par des caractères autorisés avant l'arobase
'@' . // Suivis d'un arobase
'(' . $domain . '{1,63}\.)+' . // Suivis par 1 à 63 caractères autorisés pour le nom de domaine
// séparés par des points
$domain . '{2,63}$/i'; // Suivi de 2 à 63 caractères autorisés pour le nom de domaine
// test de l'adresse e-mail
// Fin intégration de la 1er partie du script pour vérifer la validité de l'email
if($verif == 1 )
{
$Envoi = 1;//initialisation de la variable envoi a 1
$MailBody .= "Civilité : ".$sexe."\n";
if ($nom == ''){ //nom du champ1
echo '<font face="verdana" size="2">Vous n\'avez pas complété le champ Nom</font><br>'; //message qui s'affiche si le visiteur n'a pas rempli ce champ
$Envoi = ''; //si le champ1 n'a pas été rempli, la variable envoi prend la valeur de 0
}
else {
$MailBody .= "Nom : ".$nom."\n"; //si le champ1 contient de l'information, elle est stockée dans la variable MailBody
}
if ($prenom == ''){
echo '<font face="verdana" size="2">Vous n\'avez pas complété le champ Prénom.</font><br>';
$Envoi ='';
}
else {
$MailBody .= "Prénom : ".$prenom."\n";
}
if ($email == ''){
echo '<font face="verdana" size="2">Vous n\'avez pas complété le champ e-mail</font><br>';
$Envoi ='';
}
else {
$MailBody .= "email1 : ".$email."\n";
}
// 2eme partie de vérification de la validité de l'adresse email
if (preg_match($regex, $email)) {
echo "L'adresse e-mail est valide";
} else {
echo '<font face="verdana" size="2">L\'adresse e-mail n\'est pas valide.</font><br>';
}
// Fin 2eme partie de vérification de la validité de l'adresse email
if ($societe == ''){
echo '<font face="verdana" size="2">Vous n\'avez pas complété le champ société</font><br>';
$Envoi ='';
}
else {
$MailBody .= "Société : ".$societe."\n";
}
if ($adresse == ''){
echo '<font face="verdana" size="2">Vous n\'avez pas complété le champ adresse</font><br>';
$Envoi ='';
}
else {
$MailBody .= "Adresse : ".$adresse."\n";
}
if ($ville == ''){
echo '<font face="verdana" size="2">Vous n\'avez pas complété le champ ville</font><br>';
$Envoi ='';
}
else {
$MailBody .= "Ville : ".$ville."\n";
}
if ($cp == ''){
echo '<font face="verdana" size="2">Vous n\'avez pas complété le champ code postale</font><br>';
$Envoi = '';
}
else {
$MailBody .= "Code postale : ".$cp."\n";
}
if ($fonction == ''){
echo '<font face="verdana" size="2">Vous n\'avez pas complété le champ fonction</font><br>';
$Envoi = '';
}
else {
$MailBody .= "Fonction : ".$fonction."\n";
}
if ($telephone == ''){
echo '<font face="verdana" size="2">Vous n\'avez pas complété le champ téléphone</font><br>';
$Envoi = '';$verif = '';
}
else {
$MailBody .= "Téléphone : ".$telephone."\n";
}
if ($commentaire == ''){
echo '<font face="verdana" size="2">Vous avez oublié de remplir le champ message.</font><br>';
$Envoi ='';
}
else {
$MailBody .= "Message : ".$commentaire."\n";
}
}
//Envoi du message
if ($Envoi == 1) { //vérification que la variable envoi est bien a 1
mail($MailTo, $MailSubject, $MailBody, $MailHeader); //envoi du message
echo '<p><font face=verdana size=2>Votre message a bien été envoyé.<br>Merci.</font>';
}
?>
</div><!-- Cadre Message d'alerte champ formualire -->
<?php
Merci de votre aide !!