Duyuruyu Kapat
Facebook Gözat
Twitter Gözat

Php Mail Gönderme :)

Konu, 'PHP' kısmında grafikerinbiri tarafından paylaşıldı.

  1. grafikerinbiri

    grafikerinbiri Üye

    Kayıt:
    3 Mart 2007
    Mesajlar:
    232
    Beğenilen Mesajlar:
    0
    Meslek:
    grafiker
    Şehir:
    Africa
    Mrb arkadaşlar,

    Php ile mail göndermeye çalışıyorum. Kodum aşağıdaki gibi. Kısmen çalışıyor.
    Alıcı adresini kendi mail adresim yaptığımda sorun yok. Farklı adreslerde denediğimde ise göndermiyor.

    PHP:
    $name$_POST['name'];
    $uname$_POST['uname'];
    $passw$_POST['passw'];
    $kime$_POST['kime'];
    $gonder$_POST['gonder']; 
    $owner"Grafikerinbiri";
    $from"anothermail@hotmail.com";
    $konu"Web Sitesi Giriş Bilgileriniz";
    $mesaj"Sevgili ".$name.",

    Sistemimize kaydınız başarıyla yapılmıştır.

    Kullanıcı Adınız: "
    .$uname."
    Şifreniz: "
    .$passw."

    Lütfen bu e-maili saklayınız.
    info@abcz.net - www.abcz.net"
    ;        

    $headers  "MIME-Version: 1.0\r\n";
    $headers .= "Content-type: text/plain; charset=utf-8\r\n";
    $headers .= "From: $owner <$from>\r\n";
    $headers .= "Reply-To: $owner <$from>\r\n";
                                             
    //Form kontrol
    if (empty($gonder)){$check=false;}else{$check=true;}  
          
    //Mail gönder
    if ($check){
        
    $durum 0;
        
    // mail( "alıcı@adres.com" , "Mesaj Başlığı" , "Mesaj İçeriği" , $headers neyse işte );
        
    $sonuc mail($kime$konustripslashes($mesaj), $headers);
        
    //Uyarı mesajları    
        
    if ($durum==true){ 
            echo 
    "<h1>Tebrikler...</h1>Mail başarıyla gönderilmiştir."
            
    header("refresh: 4; url=admin.php");
        }else{
            echo 
    "<h1>Hata!</h1>Mail gönderme başarısız!<br><br>
            <input type='button' value='Tekrar Dene' onClick='javascript:location.reload();'>"

                    
        }
    //Uyarı mesajları bitti    
    }//Mail gönder bitti

     
  2. cgelis

    cgelis Aktif Üye

    Kayıt:
    28 Aralık 2011
    Mesajlar:
    424
    Beğenilen Mesajlar:
    0
    Meslek:
    Yazılım Mühendisi
    Şehir:
    İstanbul
    Tam hatırlayamıyorum ancak headers'a To: 'da eklenmesi gerekiyordu sanırım. Ama size tavsiyem mail göndermek için PHPMailer class'ını kullanmak. Kullanımı oldukça basit.
     
  3. SametCilli

    SametCilli Üye

    Kayıt:
    12 Aralık 2006
    Mesajlar:
    234
    Beğenilen Mesajlar:
    0
    Meslek:
    Yazılım Uzmanı
    Şehir:
    İstanbul
    header sız da göndermesi gerekiyor. biraz basit mail olur ama en azından header bilgilerinde problem olup olmadığını öğrenirsin. eğer göndermiyorsa sunucunuzun smtp ayarlarında bazı değişiklikler olabilir. çoğu sunucu mail fonksiyonu ile mail gönderilmesini engelliyor.
     
  4. Web Developer

    Web Developer Üye

    Kayıt:
    7 Ocak 2011
    Mesajlar:
    193
    Beğenilen Mesajlar:
    0
    Meslek:
    Interactive Deparment Manager, Tam Hizmet. Markala
    Şehir:
    Istanbul, Turkey, Turkey
    To: kısmına gerek yok. zaten mail fonksiyonu ilk parametre olarak kime gideceğini girmenizi ister. Bir değişkene kime gideceğini string olarak yazarsınız..


    @grafikerinbiri
    From kısmında hotmail değilde. gmail yada smtp üzerinden göndermeyen bir sunucu üzerindeki mail hesabı ile göndermeyi denermisin...
    Ayrıca sunucun smtp üzerinden gönderiyorsa, mail fonksiyonu sağlıklı çalışmayabilir.

    Bunun için PHPMailer kullanman gerekebilir.
     
  5. grafikerinbiri

    grafikerinbiri Üye

    Kayıt:
    3 Mart 2007
    Mesajlar:
    232
    Beğenilen Mesajlar:
    0
    Meslek:
    grafiker
    Şehir:
    Africa
    Teşekkürler @cgelis, @SametCilli, @Web Developer

    Header olmadan ve gmail üzerinden deneme yapıp tekrar paylaşıcam. Teşekkürler :)
     
  6. grafikerinbiri

    grafikerinbiri Üye

    Kayıt:
    3 Mart 2007
    Mesajlar:
    232
    Beğenilen Mesajlar:
    0
    Meslek:
    grafiker
    Şehir:
    Africa
    Evet :)

    Header kaldırmadım ama gmail üzerinden gönderdim. Şimdilik sorun yok gibi görünüyor.
    Hotmail üzerinden gönderirken, mail bazen gidiyor bazen gitmiyordu. Gmail üzerinden gönderilince hiçbir sorun kalmadı.

    Teşekkürler @Web Developer :)


    Arkadaşlar bir de phpmailer ve basit diyosunuz ya. Ben o php mailin içinden çıkamıyorum hiç. Çok karmaşık geliyor.
    Sade bir anlatım yapan bildiğiniz kaynak falan var mıdır?
    Teşekkürler :)
     
  7. Web Developer

    Web Developer Üye

    Kayıt:
    7 Ocak 2011
    Mesajlar:
    193
    Beğenilen Mesajlar:
    0
    Meslek:
    Interactive Deparment Manager, Tam Hizmet. Markala
    Şehir:
    Istanbul, Turkey, Turkey
    Rica ederim, PHPMailer kolaydır ya :) kurcala biraz.
     
  8. grafikerinbiri

    grafikerinbiri Üye

    Kayıt:
    3 Mart 2007
    Mesajlar:
    232
    Beğenilen Mesajlar:
    0
    Meslek:
    grafiker
    Şehir:
    Africa
    Hocam birkaç kez teşebbüste bulundum da çok karışık geldiği için ürküp geri çekildim :)
     
  9. ordermami

    ordermami Üye

    Kayıt:
    28 Ağustos 2007
    Mesajlar:
    240
    Beğenilen Mesajlar:
    0
    Meslek:
    webmaster
    Şehir:
    ankara
    $to = "<gideceği mail adresi >";
    $headers .= "MIME-Version: 1.0\n";
    $headers .= "Content-Transfer-Encoding: 8bit\n";
    $headers .= "Content-type: text/html; charset=iso-8859-9\n";
    $headers .= "To:<gideceği mail adresi>\n";
    $headers .= "From:Gönderen kişi <xxx@xxxx.xxx>\n";
    $headers .= "X-Priority: 1\n";
    $headers .= "X-MSMail-Priority: High\n";
    $headers .= "X-Mailer: PHP/" . phpversion()."\n";



    $eposta_konusu = "mesajın konusu";
    $eposta_mesaji = "mesajın içeriği";


    mail($to, $eposta_konusu, $eposta_mesaji, $headers);

    header("location:index.php?sayfa=mail tamam");
    exit();


    Dostum Bu kod Tam olarak çalışıyor
     
  10. grafikerinbiri

    grafikerinbiri Üye

    Kayıt:
    3 Mart 2007
    Mesajlar:
    232
    Beğenilen Mesajlar:
    0
    Meslek:
    grafiker
    Şehir:
    Africa
    @ordermami Teşekkürler hocam.
    Peki bu tip bir kontrol uygulaması doğru mudur? Sağlıklı mıdır?


    PHP:
    $sonuc 0;
    $sonuc mail($to$eposta_konusu$eposta_mesaji$headers);

    if (
    $sonuc==true){
        echo 
    "Mail başarıyla gönderilmiştir.";
    }else{
        echo 
    "Mail gönderme başarısız!";      
    }
    Ben bu şekilde sonuç alabiliyorum ama, bazen gitti deyip göndermiyor :)
     
  11. Web Developer

    Web Developer Üye

    Kayıt:
    7 Ocak 2011
    Mesajlar:
    193
    Beğenilen Mesajlar:
    0
    Meslek:
    Interactive Deparment Manager, Tam Hizmet. Markala
    Şehir:
    Istanbul, Turkey, Turkey
    if (mail($to, $eposta_konusu, $eposta_mesaji, $headers)){
    echo "Mail başarıyla gönderilmiştir.";
    }else{
    echo "Mail gönderme başarısız!";
    }


    Böyle de yapabilirsin.
     
  12. grafikerinbiri

    grafikerinbiri Üye

    Kayıt:
    3 Mart 2007
    Mesajlar:
    232
    Beğenilen Mesajlar:
    0
    Meslek:
    grafiker
    Şehir:
    Africa
    Daha sade daha mantıklı teşekkürler :)
     
  13. grafikerinbiri

    grafikerinbiri Üye

    Kayıt:
    3 Mart 2007
    Mesajlar:
    232
    Beğenilen Mesajlar:
    0
    Meslek:
    grafiker
    Şehir:
    Africa
    Mrb arkadaşlar. Aynı sorun devam ediyor.

    Bu kodlar sağlıklı çalışmıyor. Acaba sorun nedendir?

    PHP:
    $name$_POST['name'];
    $uname$_POST['uname'];
    $passw$_POST['passw'];
    $kime$_POST['kime'];
    $kime "<$kime>";   // sonradan ekelenen düzenleme
    $gonder$_POST['gonder']; 
    $owner"Grafikerinbiri";
    $from"grafikerinbiri@gmail.com";
    $konu"Web Sitesi Giriş Bilgileriniz";
    $mesaj"Sevgili ".$name.",

    Sistemimize kaydınız başarıyla yapılmıştır.

    Kullanıcı Adınız: "
    .$uname."
    Şifreniz: "
    .$passw."

    Lütfen bu e-maili saklayınız.
    info@abcz.net - www.abcz.net"


    $headers  "MIME-Version: 1.0\r\n";
    $headers .= "Content-Transfer-Encoding: 8bit\r\n";
    //$headers .= "Content-type: text/plain; charset=utf-8\r\n";
    $headers .= "Content-type: text/html; charset=iso-8859-9\r\n";
    $headers .= "From: $owner <$from>\r\n";
    $headers .= "To: $kime <$kime>\r\n";
    $headers .= "Reply-To: $owner <$from>\r\n";
    $headers .= "X-Priority: 1\r\n";
    $headers .= "X-MSMail-Priority: High\r\n";
    $headers .= "X-Mailer: PHP/" phpversion()."\r\n";
                                             
    //Form kontrol
    if (empty($gonder)){$check=false;}else{$check=true;}  
          
    //Mail gönder
    if ($check){
        
    $durum 0;
        
    $sonuc mail($kime$konustripslashes($mesaj), $headers);
        
    //Uyarı mesajları    
        
    if ($durum==true){ 
            echo 
    "<h1>Tebrikler...</h1>Mail başarıyla gönderilmiştir."
            
    header("refresh: 4; url=admin.php");
        }else{
            echo 
    "<h1>Hata!</h1>Mail gönderme başarısız!<br><br>
            <input type='button' value='Tekrar Dene' onClick='javascript:location.reload();'>"
    ;                 
        }
    //Uyarı mesajları bitti    
    }//Mail gönder bitti