• 23-03-2009, 13:12:24
    #1
    arkadaşlar bir php iletişim formu hazırladım. form dört dörtlük çalışıyor ancak gönderilen e-mail içeriğinde bulunan türkçe karakterler görünmüyor. bunu nasıl halledebilirim.
    mail'i gönderme işlemini yapan php dosyamın kodları aynen aşağıdaki gibi.

    arkadaşlar olabildiğince hızlı şekilde yardıma ihtiyacım var şimdiden yardımcı olan arkadaşlara teşekkürler..
    <?php 
    //formdan gelen bilgileri bu sayfaya çektik..
    $adsoyad=$_POST['ad'];
    $email=$_POST['Email'];
    $telefon=$_POST['tel'];
    $adres=$_POST['adres'];
    $mesaj=$_POST['message'];
    $emailadresi="a@mailingidecegiadres.com";  //kendi e-mail adresinizi yazin.
    $emailkonusu="Iletisim Formu";  //gönderilen e-mailde konu olarak ne görünmesiniz 
    istiyorsaniz buraya onu yazin.
    //bos alanlari kontrol ediyoruz..
    if (empty($adsoyad) or empty($email)  or empty($telefon)  or empty($adres) or empty($mesaj)){  //burayi 
    kendinize göre çogaltabilirsiniz
    print ('Lütfen bütün alanlari eksiksiz olarak doldurunuz. <br>');  //eger bos alan var ise gerekli uyari 
    mesaji.
    print('<a href="javascript:history.back()">Form Sayfasina Geri Dön</a>');  //form sayfasina geri dönüs linki
    }
    //bos alan yok ise asagidan da e-mail gönderilecektir.
    else { 
    $emailicerigi="
    Bu e-mail www.mailingidecegiadres.com adresinden gönderilmistir.
    Ad-Soyad: $adsoyad  
    E-mail: $email  
    Telefon: $telefon  
    Adre: $adres   
    Mesaj: $mesaj";  
    if(mail($emailadresi,$emailkonusu,$emailicerigi)){
    print ('Mailiniz basarili bir sekilde gönderildi. Ilginizden dolayi tesekkürler.'); //bu uyari yazisida mail 
    gönderildiginde çikacaktir.. 
    }
    } 
    ?>
  • 23-03-2009, 16:11:59
    #2
    Üyeliği durduruldu
    karakter kodlamasi karmaşası yaşıyor olabilrisiniz

    sorunu biraz daha açar misiniz?
  • 23-03-2009, 19:01:37
    #3
    sorunu şu şekilde açıklayayım. iletişim formunun olduğu bir html sayfası var. adı iletisim.html olsun. ondan bilgiler eksiksiz olarak giriliyor ve yukarıdaki kodlarla oluşan mail.php sayfasına gidiliyor. mail.php sayfası içerisinde iletisim.html'den bütün bilgiler eksiksiz olarak çekilip istediğim e-mail adresine gönderiliyor. üstelik gönderilen bilgilerde eksiksiz olarak gönderilmesi için if satırı bulunuyor php kodları arasında. iletişim formu sorunsuz çalışıyor bunda sorun yok ama istediğim e-mail adresine gelen bilgiler içerisinde türkçe karakterler görünmüyor. Mesela büyük i "İ" görünmüyor. sorun bu.
  • 23-03-2009, 22:18:24
    #4
    Formdan gelen bilgileri aldığınız satırın üstüne ;

    $dil = "Content-Type: text/plain; charset=iso-8859-9\n";
    Satırını ekleyin, ardından alttaki adımı uygulayın
    mail($emailadresi,$emailkonusu,$emailicerigi)
    //yukardaki kodu alttaki ile degistirin
    mail($emailadresi,$emailkonusu,$emailicerigi,$dil)
    Bu şekilde dener misiniz?
  • 23-03-2009, 22:24:57
    #5
    Üyeliği durduruldu
    iletisim sayfanda

    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-9" />

    böle bi kod varmı bak yoksa <head> hemen altına ekle sorunun çözülür umuyorum...
  • 24-03-2009, 00:37:29
    #6
    Eposta Aktivasyonu Gerekmekte
    "Header" içerik kodlaması ayarını aşağıdaki gibi yapıp deneyebilirsin. HTML mail için gerekir. Göndermek istediğin mail tipini bilmediğim için yinede tavsiye...
    $headers = "From: ";
    $headers .= "vs....";
    $headers  = 'MIME-Version: 1.0' . "\r\n";
    $headers .= "Content-Type: text/plain;charset=charset=iso-8859-9\n";
    //$headers .= "X-Mailer: PHP/" . phpversion();
  • 24-03-2009, 12:05:33
    #7
    desoLate; dostum bir numarasın. ne zamandır yapamıyordum bunu. çok teşekkürler. dediğin şekilde eklemeyi yaparak ilk denememde türkçe karakter sorununu çözdüm.

    diğer fikir veren arkadaşlarada teşekkürler. sizin yöntemleri denemeye gerek kalmadı (:
  • 24-03-2009, 12:08:35
    #8
    taylanaktepe arkadaşın verdiği cevabı uygula.. çünkü bu header uygulaması daha sonra çok işine yarayacak.
  • 24-03-2009, 12:12:11
    #9
    Elhamra; daha çok işime yuarayacak derken? ne gibi mesela? ama birde şu var. ben bu header olayını daha önceden yapmaya çalıştım ama bir türlü anlayamadım ondan yapmadım.