Voila je suis toujours sur mon code :
<?php
echo '<html>';
echo '<head>';
echo '</head>';
echo '<body>';
// DEBUT Fonction de contrôle du mail PHP-UNIX
function check_mail($champ6)
{
if((preg_match('/(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/', $champ6)) || (preg_match('/^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/',$champ6)))
{
$host = explode('@', $champ6);
if(checkdnsrr($host[1].'.', 'MX'))
return true;
if(checkdnsrr($host[1].'.', 'A'))
return true;
if(checkdnsrr($host[1].'.', 'CNAME'))
return true;
}
else
{
return false;
}
}
// FIN Fonction de contrôle du mail
$MailTo = "[email protected]"; //adresse à laquelle sera envoyé le contenu du formulaire
$MailSubject = $champ7; //texte qui va figurer dans le champ "sujet" du email
$MailHeader = $champ6; //adresse email qui va figurer dans le champ "expéditeur" du email et qui peut être remplacé par la variable "$champx" ("$champ3").
/* Les routines suivantes permettent à chacune des variables de prendre la valeur des champs du formulaire et de les stocker ensuite dans la variable globale MailBody qui constituera le corps du message */
$Envoi = 1; //initialisation de la variable envoi à 1
if ($champ1 == "")
{ //nom du champ1
echo "Vous n'avez pas complété le champ 1.<br />"; //message qui s'affiche si le visiteur n'a pas rempli ce champ
$Envoi = 0; //si le champ1 n'a pas été rempli, la variable envoi prend la valeur de 0
}
else
{
$MailBody .= "Nom : $champ1\n"; //si le champ1 contient de l'information, elle est stockée dans la variable MailBody
}
if($champ2 == "")
{
echo "Vous n'avez pas complété le champ 2.<br />";
$Envoi = 0;
}
else
{
$MailBody .= "Prénom : $champ2\n";
}
if($champ3 == "")
{
echo "Vous n'avez pas complété le champ 3.<br />";
$Envoi = 0;
}
else
{
$MailBody .= "Adresse : $champ3\n";
}
if($champ4 == "")
{
echo "Vous n'avez pas complété le champ 4.<br />";
$Envoi = 0;
}
else
{
$Mailbody .= "Téléphone : $champ4\n";
}
if($champ5 == "")
{
echo "Vous n'avez pas complété le champ 5.<br />";
}
else
{
$MailBody .= "Téléphone Mobile : $champ5\n";
}
if($champ6 == "")
{
echo "Vous n'avez pas complété le champ 6.<br />";
$Envoi = 0;
}
else
{
if(check_mail($champ6))
{
$MailBody .= "Mail : $champ6\n";
}
else
{
echo "L'adresse e-mail du champ 6 n'est pas valide<br />";
$Envoi = 0;
}
}
$MailBody .="Votre demande de renseignement porte sur : ";
$items = 3; //initialisation du nombre d'items possibles
for ($i = 1; $i <= $items; $i++) //boucle sur le nombre d'items
{
$MailBody .= "$champ7[$i], "; //stockage des items choisis dans la variable MailBody
}
if ($Envoi == 0)
echo "<p align=\"center\"><a href=\"c_outils/c_formulaire.html\"><strong>Retour</strong></a></p>";
if ($champ8 == "")
{
echo "Vous n'avez pas complété le champ 8.<br />";
$Envoi = 0;
}
else
{
$MailBody .= "Commentaire : $champ8\n";
}
//Envoi du message
if ($Envoi == 1) //vérification que la variable envoi est bien à 1
{
mail($MailTo, $MailSubject, $MailBody, $MailHeader); //envoi du message
echo "<p>Votre message a bien été envoyé.<br>Merci de vos commentaires.";
echo "<p align=\"center\"><a href=\"formulaire.html\"><strong>Retour</strong></a></p>"; //affichage d'un message de confirmation.
}
echo '</body>';
echo '</html>';
?>
Et quelqu'un ma dit qu'il fallait que je déclare mes variables. C'est vrai ?
Merci de répondre.
<?php
echo '<html>';
echo '<head>';
echo '</head>';
echo '<body>';
// DEBUT Fonction de contrôle du mail PHP-UNIX
function check_mail($champ6)
{
if((preg_match('/(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/', $champ6)) || (preg_match('/^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/',$champ6)))
{
$host = explode('@', $champ6);
if(checkdnsrr($host[1].'.', 'MX'))
return true;
if(checkdnsrr($host[1].'.', 'A'))
return true;
if(checkdnsrr($host[1].'.', 'CNAME'))
return true;
}
else
{
return false;
}
}
// FIN Fonction de contrôle du mail
$MailTo = "[email protected]"; //adresse à laquelle sera envoyé le contenu du formulaire
$MailSubject = $champ7; //texte qui va figurer dans le champ "sujet" du email
$MailHeader = $champ6; //adresse email qui va figurer dans le champ "expéditeur" du email et qui peut être remplacé par la variable "$champx" ("$champ3").
/* Les routines suivantes permettent à chacune des variables de prendre la valeur des champs du formulaire et de les stocker ensuite dans la variable globale MailBody qui constituera le corps du message */
$Envoi = 1; //initialisation de la variable envoi à 1
if ($champ1 == "")
{ //nom du champ1
echo "Vous n'avez pas complété le champ 1.<br />"; //message qui s'affiche si le visiteur n'a pas rempli ce champ
$Envoi = 0; //si le champ1 n'a pas été rempli, la variable envoi prend la valeur de 0
}
else
{
$MailBody .= "Nom : $champ1\n"; //si le champ1 contient de l'information, elle est stockée dans la variable MailBody
}
if($champ2 == "")
{
echo "Vous n'avez pas complété le champ 2.<br />";
$Envoi = 0;
}
else
{
$MailBody .= "Prénom : $champ2\n";
}
if($champ3 == "")
{
echo "Vous n'avez pas complété le champ 3.<br />";
$Envoi = 0;
}
else
{
$MailBody .= "Adresse : $champ3\n";
}
if($champ4 == "")
{
echo "Vous n'avez pas complété le champ 4.<br />";
$Envoi = 0;
}
else
{
$Mailbody .= "Téléphone : $champ4\n";
}
if($champ5 == "")
{
echo "Vous n'avez pas complété le champ 5.<br />";
}
else
{
$MailBody .= "Téléphone Mobile : $champ5\n";
}
if($champ6 == "")
{
echo "Vous n'avez pas complété le champ 6.<br />";
$Envoi = 0;
}
else
{
if(check_mail($champ6))
{
$MailBody .= "Mail : $champ6\n";
}
else
{
echo "L'adresse e-mail du champ 6 n'est pas valide<br />";
$Envoi = 0;
}
}
$MailBody .="Votre demande de renseignement porte sur : ";
$items = 3; //initialisation du nombre d'items possibles
for ($i = 1; $i <= $items; $i++) //boucle sur le nombre d'items
{
$MailBody .= "$champ7[$i], "; //stockage des items choisis dans la variable MailBody
}
if ($Envoi == 0)
echo "<p align=\"center\"><a href=\"c_outils/c_formulaire.html\"><strong>Retour</strong></a></p>";
if ($champ8 == "")
{
echo "Vous n'avez pas complété le champ 8.<br />";
$Envoi = 0;
}
else
{
$MailBody .= "Commentaire : $champ8\n";
}
//Envoi du message
if ($Envoi == 1) //vérification que la variable envoi est bien à 1
{
mail($MailTo, $MailSubject, $MailBody, $MailHeader); //envoi du message
echo "<p>Votre message a bien été envoyé.<br>Merci de vos commentaires.";
echo "<p align=\"center\"><a href=\"formulaire.html\"><strong>Retour</strong></a></p>"; //affichage d'un message de confirmation.
}
echo '</body>';
echo '</html>';
?>
Et quelqu'un ma dit qu'il fallait que je déclare mes variables. C'est vrai ?
Merci de répondre.