Page 1 sur 1

Petit problème : Formulaire de contact et header From

Posté : 12 févr. 2008, 16:32
par supercanard
Bonjour,

J'ai déjà eu ce problème il y a longtemps, mais je ne me rappelle plus la cause... je sais même plus si je l'avais trouvé dailleur :
$headers = 'From : '.$_POST['email'].'\n';
Au lieu d'avoir l'email envoyé par le formulaire dans le header du mail reçu j'ai une adresse du style : root@monhebergeur...

Pas trop grave mais je me demande juste pourquoi...

Posté : 13 févr. 2008, 00:48
par Hywan
Qui est ton hébergeur ? Quelle est son support mail ? Normalement, tu dois trouver des réponses dans l'aide de ton hébergeur (si elle existe).

Sinon — mais je suis septique — enlève l'espace entre « From » et « : » :

Code : Tout sélectionner

From: "Prenom Nom" <[email protected]>
, peut être que ça changera quelque chose (comme je l'ai dis, j'en doute).

Àmha, le problème vient de ton hébergeur et de son support mail.

Posté : 13 févr. 2008, 11:07
par supercanard
Je suis chez PHPnet
Je vais regarder ça chez eux alors ;)


EDIT :

Finalement tu n'avais pas tord, c'est bien l'espace qui était en cause.
Maintenant àa marche à un détail prêt : Lorsque je reçoit le mail, l'envoyeur ressemble à ça : mailduformlaireMIME-version

MIME-version viens de la ligne du dessous dans mon code... je comprends pas pourquoi il arrive ici...

Code : Tout sélectionner

$headers = 'From:'.$_POST['email'].'\r\n'; $headers .= 'MIME-version:1.0'.'\r\n'; $headers .= 'Content-type:text/html; charset= UTF-8'; mail($_POST['destinataire'],$sujet,stripslashes($message),$headers);

Posté : 13 févr. 2008, 14:12
par Truc
Pour que les sauts de lignes (et autres caractères échappés) soient pris en compte il faut les placer entre guillemets
$headers = 'From:'.$_POST['email']."\r\n"; 

Posté : 13 févr. 2008, 17:52
par Hywan
Finalement tu n'avais pas tord, c'est bien l'espace qui était en cause.
Pourquoi, tu en doutais ;-) ? Comme quoi, j'ai bien fais de le noter même si j'étais sceptique.