2016-07-27 21 views
0

Wenn ich meine E-Mail mit meinem PHP sende, ist die E-Mail leer, es ist vielleicht, weil es ein Problem mit dem \ r \ n gibt denke ich. Ich habe keine Idee, das zu lösen.PHP Mail ist leer, wenn ich sende

<?php 

$mail = '[email protected]'; 
if (!preg_match("#^[a-z0-9._-][email protected](hotmail|live|msn).[a-z]{2,4}$#", $mail)) 
{ 
    $passage_ligne = "\r\n"; 
} 
else 
{ 
    $passage_ligne = "\n"; 
} 

$message_txt = "Salut à tous, voici un e-mail envoyé par "; 

$boundary = "-----=".md5(rand()); 

$sujet = "Hey mon ami !"; 

$header = "From: \"AC\"<[email protected]>".$passage_ligne; 
$header.= "Reply-to: \"AC\" <[email protected]>".$passage_ligne; 
$header.= "MIME-Version: 1.0".$passage_ligne; 
$header .= "X-Priority: 3".$passage_ligne; 
$header.= "Content-Type: multipart/alternative;".$passage_ligne." boundary=\"$boundary\"".$passage_ligne; 

$message = $passage_ligne."--".$boundary.$passage_ligne; 

$message.= "Content-Type: text/plain; charset=\"ISO-8859-1\"".$passage_ligne; 
$message.= "Content-Transfer-Encoding: 8bit".$passage_ligne; 
$message.= $passage_ligne.$message_txt.$passage_ligne; 

$message.= $passage_ligne."--".$boundary.$passage_ligne; 
$message.= $passage_ligne."--".$boundary."--".$passage_ligne; 
$message.= $passage_ligne."--".$boundary."--".$passage_ligne; 

var_dump(mail($mail,$sujet,$message,$header)); 


?> 
+0

Sie Ihre eigenen Mime-E-Mails nicht bauen. benutze phpmailer oder swiftmailer. Es wird all diese langweiligen Mime-Sachen auf einen einzigen Anruf reduzieren. –

Antwort

0

Können Sie das A und das é in $message_txt = "Salut à tous, voici un e-mail envoyé par "; entfernen, um zu sehen, ob das hilft?

+2

warum sollte das jetzt das beheben? das ist nicht das Problem –

+0

Leute können sich aufregen, wenn Sie sie bitten, ihre Sprache auf der Gelegenheit falsch zu schreiben, die Ihre Seite nicht damit umgehen kann. – apokryfos

+0

Ich kann unmöglich sehen, warum diese Antwort eine Verbesserung erhalten hat. –

0

Entfernen Sie ----- von Grenze $

$boundary = "-----=".md5(rand()); 

seine aussehen sollte

$boundary = md5(rand(); 

und $ passage_ligne nach Content-Type-Wert entfernen.

$header.= "Content-Type: multipart/alternative;".$passage_ligne." boundary=\"$boundary\"".$passage_ligne; 

sollte wie folgt aussehen:

$header.= "Content-Type: multipart/alternative; boundary=\"$boundary\"".$passage_ligne; 
+0

Danke aber der Inhalt der Mail ist noch leer –

Verwandte Themen