2010-12-13 5 views
0

j'ai eu un comportement étrange de la fonction mail en php est ici le code:php fonction mail

$header = "From: [email protected]\n"; 
$header .= "Reply-To: [email protected]\n"; 
$header .= "Content-Type: multipart/alternative; boundary=$alt_boundary\n"; 
$header .= "Mime-Version: 1.0\n"; 
$header .= "X-Mailer: PHP/".phpversion()."\n"; 
$header .= "Content-Type: text/plain;charset=utf-8\n"; 

$send = mail($to,$subject,$message,$headers); 

mais l'e-mail que je reçois ont une de l'adresse de l'administrateur principal du serveur comme: user123 @ s12panelboxmanage.com

pourquoi?

Répondre

3

Peut-être parce que vous définissez une variable $ header, mais passez à la messagerie() variables têtes $. Si ce n'est pas la cause, essayez d'insérer \ r \ n au lieu de \ n.

+1

Quel grand coup de filet .... ne jamais utiliser s ... merci x1000 – menardmam

3

Vous devez utiliser l'option -f dans la fonction de messagerie trop pour définir la (valide) expéditeur:

 $header = 'MIME-Version: 1.0'."\n"; 
     $header .= 'Content-type: text/'.$contentType.'; charset=iso-8859-1'."\n"; 
     $header .= 'From: '.$from."\n"; 
     $header .= 'Reply-To: '.$mailFrom."\n"; 
     $header .= 'X-Mailer: PHP '.phpversion()."\n"; 
     $header .= 'X-Sender-IP: '.$_SERVER['REMOTE_ADDR']."\n"; 

     mail($to,$subject,$message,$header, "-f [email protected]");