v2.5.2
Giriş yap

PHPMailer error vermiyor ama mail gelmiyor.

bukr3j
606 defa görüntülendi ve 3 kişi tarafından değerlendirildi

Böyle bir şey de denedim gene olmadı, G-Recaptcha vs. ekledim, bir kaç hata çıktı onları düzelttim ama gene mail göndermiyor hiçbir hata da vermiyor. Bütün portları denedim aynı zamanda localhost ve sunucu üzerinde de denedim.

<?php
    include_once "../phpmailer/src/PHPMailer.php";
    include_once "../phpmailer/src/Exception.php";
    $subject = "İletişim";
    require("../phpmailer/src/PHPMailer.php");
    require("../phpmailer/src/SMTP.php");
    if (isset($_POST['g-recaptcha-response']) && $_POST['submit']){
        $secret = "google re-captcha secret-key";
		$response = $_POST['g-recaptcha-response'];
		$verifyResponse = file_get_contents('https://www.google.com/recaptcha/api/siteverify=secret=' . $secretkey . '&response= ' . $response);
		$responseData = json_decode($verifyResponse);
		require 'PHPMailerAutoload.php';
		$subject = "İletişim";
        $extra = array(
            "form_subject"	=> true,
            "form_cc"		=> true,
            "ip"			=> true,
            "user_agent"	=> true
        );
        class my_phpmailer extends PHPMailer {
            public $From     = 'mailadresi';
            public $FromName = 'isim';
            public $Host     = 'host';
            public $Mailer   = 'smtp';
            public $WordWrap = 75;

            protected function edebug($msg) {
                print('My Site Error');
                print('Description:');
                printf('%s', $msg);
                exit;
            }
        }
        if ($_POST){
            $ad = strip_tags($_POST['ad']);
            $soyad = strip_tags($_POST['soyad']);
            $number = strip_tags($_POST['phone']);
            $email = strip_tags($_POST['email']);
            $message = strip_tags($_POST['message']);
            $baslik = "WEB Mesaj: ";
            $baslik .= $subject; 
        }
        $body = "Sitenizden bir alıcı sizinle iletişime geçmek istiyor.\n\n";
        $body .= "Adı - Soyadı: " . $ad . " " . $soyad ."\n";
        $body .= "Telefon numarası: ". $number . "\n";
        $body .= "Mail adresi: ". $email . "\n";
        $body .= "Mesaj: ". $message . "\n";
        $body = wordwrap($body, 70);
        if (function_exists('mb_encode_mimeheader')) {
            $subject = mb_encode_mimeheader($subject, "UTF-8", "B", "\n");
        }
        $mail = new my_phpmailer;
        try {
            $mail->isSMTP();
            //Enable SMTP debugging
            // 0 = off (for production use)
            // 1 = client messages
            // 2 = client and server messages
            $mail->SMTPDebug = 2;
            $mail->Mailer = "smtp";
            $mail->Host = "host.mail.com";
            $mail->Port = 465;
            $mail->SMTPAuth = true;

            $mail->CharSet = 'UTF-8';
            $mail->Debugoutput = 'html';
            $mail->SMTPOptions = array(
            'ssl' => array(
                'verify_peer' => false,
                'verify_peer_name' => false,
                'allow_self_signed' => true
                )
            );
            $mail->SMTPAuth = true;
            $mail->setFrom($email);
            $mail->SMTPAuth = true;
            $mail->Username = "[email protected]";
            $mail->Password = "password";
            $mail->addAddress('[email protected]', 'Jotaro Kujo');
            $mail->Subject = $baslik;
            $mail->Body    = $body;	
            
        } catch (phpmailerException $e) {
            echo $e->errorMessage();
        } catch (Exception $e) {
            echo $e->getMessage();
        }
    }
?>
Cevap yaz
Cevaplar (6)
ebykdrms
657 gün önce

Sorunlarına çözüm bulunca Doğru Cevap olarak işaretlemeyi pek tercih etmeyen @ilkertuncer adlı kullanıcıya vaktiyle verdiğim PHPMailer Örneği cevabıma göz atabilirsiniz.
Bu cevabımda bir sorun var mıydı? Bilmiyorum. Çünkü yaşadığı sorunun çözümünü cevap olarak yazmak ve doğru cevabı işaretlemek yerine aynı başlık altında bana başka soru sormayı tercih etmişti.

Ara sıra siz de doğru cevap işaretlemeyi atlamışsınız.
Mesela buradaki veya buradaki sorularınızda doğru cevap belli değil. Siz çözmüşseniz de nasıl çözdüğünüzü yazmamışsınız.
Bakın örneğin burada size cevap veren 3 kişiye teşekkür edip sorunu farklı bir yolla çözdüğünüzü belirtmişsiniz ama nasıl çözdüğünüzü de yazıp doğru cevap olarak işaretlemediğiniz için Çözülmemiş Soru olarak kalmış.
Buradaysa nasıl çözdüğünüzü teorik olarak yazmışsınız ve cevap yazanlara teşekkür etmişsiniz ama soru halen çözülmeyi bekleyen sorular arasında...
Buradaysa cevabımın kopyala yapıştırla uğraştırması nedeniyle başka bir plaftorm üzerinden cevabı oluşturmamı istemişsiniz ve güzel bir düşünce olduğunu düşünerek istediğiniz şekilde yanıt vermişim. Hatta bu cevaptan sonra başkalarının sorularında da önerdiğiniz yöntemi kullandım. Ama ne yazık ki size verdiğim cevabın doğru olup olmadığı yine Çözülmemiş Soru olarak kalmış.
Hadi mesela burada ise kapsamı çok geniş bir soru sormuşsunuz ve cevaplarımız sizi tatmin etmemiş olabilir. Bu soruya daha geniş kapsamlı bir cevap bekliyor olabilirsiniz ki bu iyi de olur çünkü bunu sizin gibi merak eden başkaları da konuyla ilgili daha derinlemesine bilgiye sahip olmak isteyeceklerdir. Ama bu durumda da doğru cevabı halen almadığınızı düşünüyorsanız nasıl bir cevap istediğinize dair bir cevap yazarak konunun ilerlemesini sağlamalı ve sonuca ulaşıncaya kadar devam etmelisiniz. Yoksa bu soru yıllarca çözülmemiş kalır.
Oysaki burada, burada ve burada sorunuza doğru cevap bulduğunuzda işaretlemişsiniz ve bu platformu olması gerektiği gibi kullanmışsınız.

Bunlar sadece benim size cevap verdiğim sorular. Böyle bir bakınca bugüne kadar sizin 9 sorunuza dahil olmuşum ve bu soruların sadece 3'ünde doğru cevabı bulduğunuzu belirtmişsiniz. Eğer benim cevap vermediğim sorularınızda da bunu yapıyorsanız sorularınızın 2/3'ü cevaplandığı halde çözülmemiş soru olarak kalıyor.

Bu yalnız sizin yaptığınız bi'şey değil tabi. Muhtemelen sorununuzu çözdükten sonra buraya geri dönüp doğru cevap işaretlemeyi unutuyorsunuzdur veya aklınıza geldiğinde de vaktiniz olmuyordur -ki zaten bu platformu sık kullanıyorsunuz ve sıklıkla yeni sorunlarla ilgileniyorsunuz- ve haliyle hızlıca ileri gitmekten geriyi toplamaya fırsatınız olmuyor.
Benim buna takılma nedenim; bu platformun amacına uygun kullanılmadığını düşünmem.
Normalde bu platformun birçok eksiği var.
Profilimiz yeterince detaylı değil ve düzenlenemiyor. Sorularda ara özelliği yeterince fazla sonuç göstermiyor.
Cevaplarda kişi etiketleme yok.
Sizin soru olarak açtığınız Acilen mesaj reportlama gelmesi lazım! başlıklı talebiniz var mesela.
Tabii ki Tayfun ERBİLEN bunların hepsini yapabilir. Hatta yanılmıyorsam uzmancevap.org projesinde bunlardan da fazlasını düşündüğünü (pazar yeri gibi) göstermişti. Ama bu onun gönüllülük esasına göre geliştirdiği bir proje ve platformunun onun hayal ettiği gibi kullanılmadığını gördünce gönüllüğünü yitiriyor. Hatta sanırım Gökhan KANDEMİR ile yaptığı, YouTube'dan izlediğim bir yayında bu rahatsızlığını dile getirmişti.
Şu an bu projeyi eksiklerini de gidererek başka bir domain altında ben de yapabilirim. Ama benim de Tayfun ERBİLEN kadar geniş bir kitleye projemi ulaştırmam mümkün olmaz. Elimizde binlerce yazılımcıyı tek çatı altında toplayabilecek etkiye sahip bir adam var ve üşenmeyip bize bu platformu kurmuş ama biz onu düzgün kullanıp geliştirmek yerine veri çöplüğüne çeviriyoruz. Eminim şu an bu platformda da Tayfun ERBİLEN özellikle engellemese (uzmancevap.org'da olduğu gibi) sorusuna çözüm bulunca soruyu tüm cevaplarıyla birlikte silmeye çalışacak saygısız, bencil kullanıcılar vardır.

İç Dökme Sonrası Cevap

@ilkertuncer adlı kullanıcıya vaktiyle verdiğim PHPMailer Örneği cevabıma göz atabilirsiniz.
Belki soru orada başladı ama burada sonlanır. Bu örnek bende çalışıyor. Sizde çalışmazsa ne hatayla karşılaştığınızı yazarsanız yardımcı olabiliriz.

rotaile
657 gün önce

dostum merhaba, benim hali hazırda kullandığım bir phpmailer dosyam var githubdan almıştım.
Şuanda da kullanıyorum, şu şekilde vereyim sana kendine göre düzenler kullanırsın.

rar olarak ekledim dosyaları drive ile paylaştım. phpmailer dosyası aşağıdaki kodları eklediğin sayfa ile aynı dizinde olmalı


//mailer sınıflarını dahil etme

use PHPMailer\PHPMailer\Exception;

use PHPMailer\PHPMailer\PHPMailer;


require 'PHPMailer/src/Exception.php';

require 'PHPMailer/src/PHPMailer.php';

require 'PHPMailer/src/SMTP.php';


//php mailer kullanımı

$mail = new PHPMailer();

$mail->IsSMTP();

$mail->SMTPAuth = true;

$mail->Host = 'smtp.gmail.com';

$mail->Port = 587;

$mail->Username = 'mailGö[email protected]';

$mail->Password = 'Mail Adresinin Şifresi';

$mail->SetFrom('Mail Gönderen Kişi');

$mail->AddAddress("mail gönderilcek kişi");

$mail->CharSet = 'UTF-8';

$mail->Subject = 'Mail Konusu';
}

$mail->MsgHTML("mail içeriği");

if ($mail->Send()) {
    
    echo 'Mail gönderildi!';
    
} else {
    
    echo 'Mail gönderilirken bir hata oluştu: ' . $mail->ErrorInfo;
    
}

dosyaları burada

zelemi
658 gün önce

error_reporting() olayını ac ve log dosyasına bak bazen hata yokmuş gibi gelebilir fakat logda bu hata gösterilir.

emmir2
658 gün önce

sayfanın en başına bunları ekledin mi ?

use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\SMTP;
use PHPMailer\PHPMailer\Exception;
bukr3j
659 gün önce

İnternetde bir şey bulamadım yardım edebilecek misiniz???

bukr3j
660 gün önce

yardım edebilecek yok mu? :(