Envoi de mail avec expediteur dans le Header

miltonis Messages postés 247 Statut Membre -  
 piersoleil -
Bonsoir :)

Pour une page de Contact sur un site, je viens d'integrer la fonction PHP mail qui focntionne plutot bien sauf que je n'arrive pas à faire afficher comme expéditeur le mail qui a été renseigné par l'envoyeur.

Actuellement ça donne :
Reply-To: expediteur@mail.com
X-Mailer: PHP/4.4.4
sujet : Demande d\'informations
nom : mario
email : expediteur@mail.com
titre : test6
commentaires : 6666666

Mais lorsque j'ouvre le mail reçu dans ma messagerie en expéditeur il y a rien ou alors xxxxxx@90plan.ovh.net (site hébergé sur ovh)
Que faire et comment ? je ne vois pas grand chose sur le net sur ce sujet...
voilà, merci de votre aide
A voir également:

7 réponses

piersoleil
 
Bonjour,
J'ai eu le même problème, car le script php était dans le répertoire cgi-bin.

Je l'ai déplacé à la source du site, et le ("header location : monsite.com"); fonctionne sans problème.

Cordialement
1
jee pee Messages postés 42690 Date d'inscription   Statut Modérateur Dernière intervention   9 794
 
bonjour,

Generalement, les serveurs n'acceptent pas que l'on mette à la main un expediteur de message quelconque.

Cela par sécurité, car ca permettrait d'envoyer un mail avec une identité usurpée, si en expediteur je mets jchirac@gouv.fr je peux faire pas mal de blagues non ?

cdt
0
miltonis Messages postés 247 Statut Membre 19
 
ok je vois, dans ce cas il existe peut etre une solution en formattant le texte en HTML....
est-il possible de mettre le mail dans le contenu dans uen balise <a> avec mailto en href ?
0
jee pee Messages postés 42690 Date d'inscription   Statut Modérateur Dernière intervention   9 794
 
avec mailto, pas de problème puisque ca lance le gestionnaire de messagerie sur le poste connecté, c'est comme si l'utilisateur faisiat un mail ordinaire.
0
miltonis Messages postés 247 Statut Membre 19
 
bien reçu, je vais voir comment faire.
merci Jee Pee :)
0
miltonis Messages postés 247 Statut Membre 19
 
Bonsoir,
je relance le sujet car j'ai du nouveau mais aussi une pitite question ;)

j'ai finalement intégré ce script pour mon formulaire de contact :
$destinataire = "truc@free.fr";
$expediteur   = $_POST['email'];
$reponse      = $expediteur;

echo "Ce script envoie un mail au format HTML à $destinataire";
$codehtml = "nom : ".$_POST['nom'];
$codehtml .= "<br />email : ".$_POST['email'];
$codehtml .= "<br /><br />sujet : ".$_POST['titre'];
$codehtml .= "<br />".$_POST['commentaires'];
$codehtml .= 
"<html><body><br />" .
"› <a href=\"mailto:".$_POST['email']."\">répondre à ". $_POST['nom']."</a>" .
"</body></html>";
mail($destinataire,
     "demande d'infos",
     $codehtml,
     "From: $expediteur\r\nReply-To: $reponse\r\nContent-Type: text/html; charset=\"iso-8859-1\"\r\n");


pour info, le script (avant modifs) vient de :
http://www.toutestfacile.com/php/cours/mail_1.php5

J'en suis content, mais ma question est comment faire pour y intégrer la fonction "Header" à la place du "echo" de manière à ce qu'une fois le script envoyé il me redirige sur la page de mon choix.
exemple :
Header("Location: http://www.ccm.net");


je l'ai placé à la place du echo et à la fin du script mais j'ai un message d'errerur :
"Warning: Cannot modify header information - headers already sent by (output started at (url) "

quelqu'un a une idée SVP?
merci :)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
miltonis Messages postés 247 Statut Membre 19
 
Bonsoir :)

Je reviens à la charge car j'ai beau chercher je ne trouve pas de solution à mon problème...

Lorsque l'envoi de mail est effectué, je voudrais être redirigé vers la page de mon choix (page de confirmation d'envoi par ex.)
Voici le code, merci aux ames charitables de se pencher sur ce sujet :
$destinataire = "truc@free.fr";
$expediteur   = $_POST['email'];
$reponse      = $expediteur;

echo "Ce script envoie un mail au format HTML à $destinataire";
$codehtml = "nom : ".$_POST['nom'];
$codehtml .= 
"<html><body><br />" .
"› <a href=\"mailto:".$_POST['email']."\">répondre à ". $_POST['nom']."</a>" .
"</body></html>";
mail($destinataire,
     "demande d'infos",
     $codehtml,
     "From: $expediteur\r\nReply-To: $reponse\r\nContent-Type: text/html; charset=\"iso-8859-1\"\r\n");


Merci encore :)
0
miltonis Messages postés 247 Statut Membre 19
 
personne n'a d'idée ??
0
Antoine
 
J'avais le même probleme que toi.

Enfet le soucis de php est que tu ne peux pas envoyer une fonction header après une balise html.

rajouter une fonction avant ta balise <html> de ta page du genre :

function retour_accueil
{
header(Location...);
}

et a l'endroit ou tu veux faire un header tu fais un simple appeles de fonction :

retour_accueil ;

;)
0