2012-11-07 18 views
5

Ben yolu aşağıdaki posta göndermek çalışıyorum -PHPMailer sınıfı true döndürür ancak e-posta teslim edilmez

from : [email protected] 
reply-to : [email protected] 
to : [email protected] 
cc : [email protected] 

Benim eposta I ve cc e-postalar değiştirin (CC belirtilen adrese teslim oluyor ve sonra e-posta adresinde belirtilen adrese gönderilir)

Herhangi bir nedenle e-posta, [email protected] adresine teslim edilmiyor. E-postayı outlook veya gmail kullanarak bu adrese manuel olarak gönderirsem, e-posta aslında gönderilir. Bu sorunu nasıl giderebilirim?

Spam/gereksiz dizinleri de kontrol ettim, orada e-posta yok. Php mail() işlevinin yanı sıra phpmailer sınıfını kullanmayı denedim. Her ikisi de TRUE döndürür. Sebebi ne olabilir? Lütfen yardım et. Sunucu yüksek sesle olduğunu

$mail->From = "[email protected]"; 
$mail->AddReplyTo("[email protected]"); 
$mail->AddAddress("[email protected]"); 
$mail->AddCC("[email protected]"); 
$mail->Subject = $subject; 
$mail->Body = $message; 

if(! $mail->Send()) { 
    echo "Message was not sent"; 
    echo "Mailer Error: " . $mail->ErrorInfo; 
    exit; 
} 
+1

Lütfen kodunuzu veriniz – Elby

+1

AFAIK, PHP'nin 'mail()' katı bir hata ayıklama mekanizmasına sahip değil. Yani sorunun nerede yattığını kesin olarak bilemezsin. – asprin

+0

Evet. Bu yüzden phpmailer sınıfını kullandım. Aynı zamanda doğru döner. Herhangi bir hata atmaz. Yukarıdaki soruya kod ekledim. –

cevap

2
Try to set cofigurations beffore send (Gmail config): 



    $mail = new Mailer(); 
    $mail->SMTPDebug = true; 
    $mail->SMTPAuth = true; 
    $mail->CharSet = 'utf-8'; 
    $mail->SMTPSecure = 'ssl'; 
    $mail->Host = 'smtp.gmail.com'; 
    $mail->Port = '465'; 
    $mail->Username = 'your login here'; 
    $mail->Password = 'your password here'; 
    $mail->Mailer = 'smtp'; 
    $mail->From = 'form mail address'; 
    $mail->FromName = 'from name'; 
    $mail->Sender = 'form mail'; 
    $mail->Priority = 3; 

    $mail->AddAddress('mail', 'admin name'); 
    $mail->AddReplyTo('replay to', 'admin name'); 
    $mail->Subject = 'subject'; 
    $mail->Body = 'some HTML message here'; 
    $mail->IsHTML(true); 
    if(!$this->Send()) { 
     print_r('error: '. $mail->ErrorInfo); // Show errors 
} 
    $mail->ClearAddresses(); 
    $mail->ClearAttachments(); 
+0

Tüm sabitlerle neler var? Değerleri doğrudan atayabilirsiniz, biliyor musunuz? Sabitlere gerek yok. Ayrıca, "$ mail", $ mail-> IsSMTP(); 'öğesini atamaya çalıştığınızda bir nesne değildir. –

+0

Sory. Artık sabit olmayan bazı değişiklikler ekleyin – RDK

0

onay aynı i Plesk kullanılan benim durumumda başıma e-postalar göndermek ve nedense ben alıncaya kadar göndermek ve e-posta mümkün değildi ve ben bunu değiştirmek eposta yapılandırma ve çalışıp çalışmadığınızı da kontrol edin qmail eğer qp postasını kullanmanız gerekiyorsa php mailler

0

Bu, bir e-posta adresinden e-posta gönderiyorsanız veya farklı bir (veya etki alanı) kimliğini doğrulamanız durumunda da olabilir

$ mail.setFrom() öğesini kimlik doğrulaması yaptığınız e-posta adresine ayarlayın.

İlgili konular