Php üzerinden SMTP onaylı mail gönderme

Bazı sunucular güvenlik nedeniyle php ile gelen mail() fonksiyonunu engellerler. Bu durum spam’e engel olmak ya da sunucu üzerine binen yükü azaltmak için konulmuş olabilir. Her neyse, bizim yapmaya çalıştığımız smtp sunucusu üzerinden bir hesap kullanarak php ile mail göndermektir. Bu konuda bahsedeceğim ek fonksiyon ile mailleri php ile smtp üzerinden gönderebilirsiniz: phpmailer. İsterseniz ek olarak ssl kullanarak mailleri şifreleyebilirsiniz.

Mail formunuzu hazırladğınızı ve formun action kısmındaki php dosyasında olduğunu varsayarak;

    require_once("class.phpmailer.php");

    $mail = new PHPMailer(); //nesneyi oluşturuyoruz

    $mail->IsSMTP(); //smtp kullanmak için
    $mail->Host = "mail.microturk.net"; //mail sunucunuz
    $mail->Port = 587; //25. portta olabilir
    $mail->SMTPAuth = true; //onayı aktive ediyoruz
    $mail->Username = "posta@microturk.net"; //kullanılacak eposta adresi
    $mail->Password = "micromicrobaba"; //şifre
    $mail->From = $_POST['eposta']; //formdan gelen mail adresi
    $mail->Fromname = $_POST['isim']; //formdan gelen isim
    $mail->AddAddress("ataturk@microturk.net","Mustafa Kemal Atatürk");
    $mail->Subject = $_POST['konu']; //formdan gelen konu
    $mail->Body = $_POST['mesaj']; //formdan gelen mesaj

    if(!$mail->Send())
    {
    echo 'Gönderim Hatası: ' . $mail->ErrorInfo;
    exit;
    }

    echo 'Mesaj başarıyla gönderildi';

Eğer hazır örneği görmek istiyorsanız bu sayfayı, bilgisayarınıza indirerek kendinize göre düzenlemek için bu sayfayı ziyaret edin.

Php üzerinden SMTP onaylı mail gönderme” üzerine 28 düşünce

  1. Merhaba efecan bey acaba size benim iletism.html versem siz orda gerekenleri yapabilirmisiniz deniyorum ama hala çözemedim lütfen yardımcı olunuz yarın müşterye teslim etmem gerekiyor işi

  2. arkadaslar kodda

    $mail->AddAddress(“ataturk@microturk.net”,”Mustafa Kemal Atatürk”);

    buraya ne yazıcaz çünkü mail gönderirken normal kendi adresimi yazıyorum gönderim hatası alıyorum

  3. şöyle bir hata aldım neden acaba

    Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or ‘}’ in D:\inetpub\vhosts\atilganbitkisel.com\httpdocs\mail\class.phpmailer.php on line 45

  4. sayın admin öncelikle emekleriniz için çok saolun ellerınıze sağlık . lakin kodlarınızda küçük bir hata var hata şu php tagları ile html tagları iç içe yazıldığından kaynaklı form etiketleri soluk yani hatalı gözüküyor . şimdi onları farklı bir sayfada deniyeceğim. yani php yi ayrı bir sayfada denicem sıkıntım kalmaz umarım yazıcam sonucu buraya

  5. merhaba;
    smtp ile;
    ilk önce her yere mail atabiliyordum 25 portuyla.sonra sonra mail gönderildi diyo ama hotmaile email gelmiyo.port tunu 587 yaptım sorun çözülmedi.şimdi hotmaile gelmiyo ama gmaile gönderiyorum.nasıl bir çözüm gerekir :? ????

  6. emek verdiğinz için Rabbim razı olsun faydalındak…
    bir sikinti oluşmakta dnemelerimde posta SPAM olarak gelmekte araştırmalarımda birn sonuca varamadım bir çözümünüz varmı acaba

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

*

Şu HTML etiketlerini ve özelliklerini kullanabilirsiniz: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>