Benim e-posta başlığı doğru mu?

5 Cevap php

Başlık Incorect "Kimden" aşağıdaki mı?

	// To send HTML mail, the Content-type header must be set
	$headers  = 'MIME-Version: 1.0' . "\r\n";
	$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
	// Additional headers
	$headers .= 'From: Mail Master <mail@mailmaster.com>' . "\r\n";
if(sendEmailNow($email, $subject, $body, $headers)){

Benim posta sunucusundan hatası alıyorum. Bu ": sözdizimi hatası hatadan Posta" diyor.

Herhangi bir yardım için teşekkür ederiz.

Update

Ben aşağıda SendEmailNow işlevini soyunmuş ve ben aynı hatayı alıyorum:

//send an email
function sendEmailNow($email, $subject, $body, $headers){

    if (mail($email, $subject, $body, $headers)) {
      ##check email
      ##code to say email sent - compare with the number registered
      return true;
     }

     else {
      ##code to report an error 
      return false;
     }

 }

Update 2

Sorun çözüldü. Doğru cevap seçilmiş gibi ben. PHP 5 kullanarak bir windows makinede bu çalıştırıyorum ve yorumlar söylediler. Bazı posta sunucuları sorun ben daha önce ne vardı anlayış var. Ama ne benim için çalıştı bu oldu:

$headers .= 'From: mail@mailmaster.com' . "\r\n";

5 Cevap

Hata mesajı için bir Google arama bazı SMTP sunucuları From başlığında için sözdizimi ayrıştırmak için başarısız olduğunu göstermektedir. Eğer bu olasılığı ekarte etmek için aşağıdaki sözdizimini deneyebilir miyim?

From: mail@mailmaster.com

Vücut boş sürece, başlıklarını sonlandırmak için ek bir CRLF'yi gerekebilir. API bilmeden çok fazla diyemeyiz.

Bu yardımcı olacak emin, ama burada çıkış başlıkları saf metin benim Python app benziyor ne değildir:

Content-Type: multipart/alternative;
    boundary="10.254.26.130.1.1364.1241389770.060.1"
From: User1 <user1@domain1.com>
To: User2 <user2@domain1.com>,User3 <user3@domain.com>
Subject: Actual subject
MIME-Version: 1.0


--10.254.26.130.1.1364.1241389770.060.1
Content-Type: text/plain;
    charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

actual text content starting here...

Yine, tüm içerik / başlıklarını bilmeden söylemek zor, ama ben a) içeriği önce firar CRLFs dışarı bıraktım, ya da eksik CRLF'yi önceki başlıkların b) Bir ya tahmin ediyorum.

Özür dilemek bir çılgınca yanlış yönde seni alırsa. :)

From: "User1" <user1@domain1.com>

From başlık adı bölümü için tırnak gerektirir.

Eğer formda "$ useremail" değişkeni ayarlamak varsa, onlara ve bir cevap dan olabilir. $ Email_id kendisine gönderilen e-posta olduğunu.

        $to=$email_id;
        $headers = "From: " . strip_tags($userEmail) . "\r\n";
        $headers .= "Reply-To: ". strip_tags($userEmail) . "\r\n";