Php - fonction mail... n'envoie pas toujours
gryzzly
Messages postés
5220
Date d'inscription
Statut
Contributeur
Dernière intervention
-
gryzzly Messages postés 5220 Date d'inscription Statut Contributeur Dernière intervention -
gryzzly Messages postés 5220 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
un soucis avec la fonction mail sur mon script. tout marche très bien avec les messageries gmail, mais si l'utilisateur me donne un mail chez orange/wanadoo, free, etc... il ne recoit pas son mail deconfirmation.
mon script ci dessous :
Auriez vous une idée de là ou vient le probleme ? le script est hébergé chez free (je sias pas si ca influe en quoi que ce soit) ... est ce que ca vient du fait que j'envoie en html ??
merci !
un soucis avec la fonction mail sur mon script. tout marche très bien avec les messageries gmail, mais si l'utilisateur me donne un mail chez orange/wanadoo, free, etc... il ne recoit pas son mail deconfirmation.
mon script ci dessous :
$son_pseudo = $_POST["son_pseudo"]; // On stocke les variables récupérées du formulaire
$son_email = $_POST["son_email"];
$son_url = $_POST["son_url"];
$son_objet = $_POST["son_objet"];
$son_message = $_POST["son_message"];
//entete pour moi
$entete ='From: '. $mon_pseudo.' <'. $site_contact .'>' . "\n";
$entete .='Reply-To: ' . $son_email . "\n";
$entete .='Content-Type: text/html; charset="iso-8859-1"'."\n";
$entete .='Content-Transfer-Encoding: 8bit';
//entete pour celui qui a posté
$entete1 ='From: '. $mon_pseudo .' <'. $site_contact .'>' . "\n";
$entete1 .='Content-Type: text/html; charset="iso-8859-1"'."\n";
$entete1 .='Content-Transfer-Encoding: 8bit';
// Mise en forme du message que je recevrais
$msg_pour_moi ='
<html>
<head>
<title>'.$son_objet.'</title>
</head>
<body>
- Son pseudo : '.$son_pseudo.' <br />
- Son email : '.$son_email.' <br />
- Son site : '.$son_url.' <br />
- Object du message : '.$son_objet.' <br />
- Message :<br />'
.$son_message.'
</body>
</html>';
// Mise en forme de l'accusé réception qu'il recevra
$accuse_pour_lui ='
<html>
<head>
<title>'.$son_objet.'</title>
</head>
<body>
<h2>Bonjour '.$son_pseudo.',</h2><br />
Votre message nous a bien été envoyé et nous tâcherons de vous répondre le plus rapidement possible. Merci de ne pas répondre à ce mail.<br/><br />
- Votre email : '.$son_email.' <br />
- Votre site : '.$son_url.' <br />
- Object de votre message : '.$son_objet.' <br />
- Votre message :<br />'
.$son_message.'<br /><br />
Merci et à bientôt sur <a href="'.$site_domaine.'">'.$site_nom.'</a> !
</body>
</html>';
// Envoie du mail
if (@mail($site_admin,$son_objet,$msg_pour_moi,$entete) && @mail($son_email,$son_objet,$accuse_pour_lui,$entete1)){ // Si le mail a été envoyé
echo "<p style=\"text-align:center\">Votre message a été envoyé, vous recevrez une confirmation par mail.<br /><br />\n"; // On affiche un message de confirmation
echo "<a href=\"/\">Retour à l'accueil</a></p>\n"; // Avec un lien de retour vers l'accueil du site
}
else { // Sinon il y a eu une erreur lors de l'envoi
echo "<p style=\"text-align:center\">Un problème s'est produit lors de l'envoi du message.\n";
echo "<a href=\"".$_SERVER["PHP_SELF"]."\">Réessayez...</a></p>\n"; // On propose un lien de retour vers le formulaire
}
Auriez vous une idée de là ou vient le probleme ? le script est hébergé chez free (je sias pas si ca influe en quoi que ce soit) ... est ce que ca vient du fait que j'envoie en html ??
merci !
Configuration: Windows XP Firefox 2.0.0.4
2 réponses
-
c'est peut etre a cause de ton herbergement par exemple je sait que chez free normalement ils ont désactivé cette fonction elle ne marche pas...
enfin si ça marche parfois c'est bisar... -
ben pourtant ca fonctionne... puisque j'envoie des mail... les mails de confirmation d'inscription a ma zone membre sont envoyés sur les boites free/orange/etc...
mais pas les confirmations de mails d'envoi de message non. les premiers sont en format simple, les second en html... (sans savoir si ca vient du format)
help... :'(