J'essaie d'envoyer simplement un mail à partir d'un formulaire, le message de confirmation apparait, mais je ne reçois rien dans ma boite aux lettres.
Voici mon code, si quelqu'un voit le bug... Merci à vous.
(le formulaire est posté par la page précedente, qui renvoie vers elle même, vérifie les champs et les variables sont envoyées par la session si les champs sont validés).
Je précise que j'ai déjà utilisé la fonction mail() sur le même hébergement, ça fonctionne, et j'ai vérifié les variables, elles sont correctes.
<?php session_start(); ?>
<?php
$message="";
$headers.=$_SESSION['nom'];
$address = "[email protected]" ;
$sujet = "demande de devis" ;
$message .= "Organisateur : {$_SESSION['organisateur']} \n" ;
$message .= "Type de spectacle :{$_SESSION['type']} \n" ;
$message .= "Nature de la prestation :{$_SESSION['prestation']} \n" ;
$message .= "Lieu du spectacle :{$_SESSION['lieu']} \n" ;
$message .= "Durée souhaitée :{$_SESSION['duree']} \n" ;
$message .= "Nbre de spectateurs :{$_SESSION['nombre']} \n" ;
$message .= "Budget :{$_SESSION['budget']} \n" ;
$message .= "Autres renseignements :{$_SESSION['renseignements']} \n" ;
$message .= "Nom :{$_SESSION['nom']} \n" ;
$message .= "E-Mail :{$_SESSION['email']} \n" ;
$message .= "Téléphone :{$_SESSION['tel']} \n" ;
if (preg_match ("/\Content-Type\b/i", $message)) {
$affichertexte= "<h3>Votre message contient du code html et ne sera pas envoyé.</h3>";
}
elseif (preg_match ("/\MIME-Version\b/i", $message)) {
$affichertexte= "<h3>Votre message contient du code html et ne sera pas envoyé.</h3>";
}
elseif (stristr($message, '<')) {
$affichertexte= "<h3>Votre message contient du code html et ne sera pas envoyé.</h3>";
}
else {
if (mail($address,$sujet,$message,$headers)){
// Si le mail a bien été envoyé, message de confirmation
$affichertexte= "<h3><strong>Votre demande a bien été prise en compte.</strong></h3>
<h3><strong>Elle sera traitée dès réception et nous vous contacterons sous 48 h. </strong></h3>";
}
else{
// sinon, message d'erreur.
$affichertexte= "Votre mail n\'a pas pu être envoyé.Le serveur est en dérangement. Merci de réessayer un peu plus tard.<br>";
}
}
?>
<?php
print $affichertexte;
?>