• 20-09-2010, 17:43:51
    #1
    CS5
    Üyeliği durduruldu
    Arkadaşlar Sorun Nerde Çözemedim Vps Kullanıyorum Yapmış Oldugum Web Sitesinin Mailleri Mail Kutusunda Türkçe Karakterleri Saçmaspan Gösteriyor yanı Bildiğimiz Tr Karakter Hatası Yalnız Sorun nerde Anlamadım Bundan Öncede yapmıs Oldugum Sitelerde Aynı Hataları Aldım Ama Bı Türlü Çözemedım Bu Sorunu

    Sitede Bulunan submitemail.php Dosyasının Kodları

    <?
    
    /************************
    * Variables you can change
    *************************/
    
    $mailto = "info@site.com";
    $cc = "";
    $bcc = "";
    $subject = "Email Konusu";
    $vname = "Web Sitesinden Gelen";
    
    
    /************************
    * do not modify anything below unless you know PHP/HTML/XHTML
    *************************/
    
    
    $email = $_POST['email'];
    
    function validateEmail($email)
    {
       if(eregi('^[a-zA-Z0-9._-]+@[a-zA-Z0-9-]+\.[a-zA-Z]{2,4}(\.[a-zA-Z]{2,3})?(\.[a-zA-Z]{2,3})?$', $email))
          return true;
       else
          return false;
    }
    
    
    if((strlen($_POST['name']) < 1 ) || (strlen($email) < 1 ) || (strlen($_POST['message']) < 1 ) || validateEmail($email) == FALSE){
        $emailerror .= 'Hata:';
    
        if(strlen($_POST['name']) < 1 ){
            $emailerror .= '<li>Adınızı Giriniz</li>';
        }
    
        if(strlen($email) < 1 ){
            $emailerror .= '<li>Email Giriniz</li>';
        }
    
        if(validateEmail($email) == FALSE) {
            $emailerror .= '<li>Email Adresi Geçersiz</li>';
        }
    
        if(strlen($_POST['message']) < 1 ){
            $emailerror .= '<li>Mesajınızı Yazınız</li>';
        }
    
    } else {
    
        $emailerror .= "Mesajınız Başarıyla Gönderildi";
    
    
    
        // NOW SEND THE ENQUIRY
    
        $timestamp = date("F j, Y, g:ia");
    
        $messageproper ="\n\n" .
            "Name: " .
            ucwords($_POST['name']) .
            "\n" .
            "Email: " .
            ucwords($email) .
            "\n" .
            "Comments: " .
            $_POST['message'] .
            "\n" .
            "\n\n" ;
    
            $messageproper = trim(stripslashes($messageproper));
            mail($mailto, $subject, $messageproper, "From: \"$vname\" <".$_POST['e_mail'].">\nReply-To: \"".ucwords($_POST['first_name'])."\" <".$_POST['e_mail'].">\nX-Mailer: PHP/" . phpversion() );
    
    }
    ?>
    
    <div id='emailerror'>
        <ul>
            <? echo $emailerror; ?>
        </ul>
    </div>
  • 20-09-2010, 17:50:23
    #2
    <?
    
    /************************
    * Variables you can change
    *************************/
    
    $mailto = "info@site.com";
    $cc = "";
    $bcc = "";
    $subject = "Email Konusu";
    $vname = "Web Sitesinden Gelen";
    
    
    /************************
    * do not modify anything below unless you know PHP/HTML/XHTML
    *************************/
    
    
    $email = $_POST['email'];
    
    function validateEmail($email)
    {
       if(eregi('^[a-zA-Z0-9._-]+@[a-zA-Z0-9-]+\.[a-zA-Z]{2,4}(\.[a-zA-Z]{2,3})?(\.[a-zA-Z]{2,3})?$', $email))
          return true;
       else
          return false;
    }
    
    
    if((strlen($_POST['name']) < 1 ) || (strlen($email) < 1 ) || (strlen($_POST['message']) < 1 ) || validateEmail($email) == FALSE){
        $emailerror .= 'Hata:';
    
        if(strlen($_POST['name']) < 1 ){
            $emailerror .= '<li>Adınızı Giriniz</li>';
        }
    
        if(strlen($email) < 1 ){
            $emailerror .= '<li>Email Giriniz</li>';
        }
    
        if(validateEmail($email) == FALSE) {
            $emailerror .= '<li>Email Adresi Geçersiz</li>';
        }
    
        if(strlen($_POST['message']) < 1 ){
            $emailerror .= '<li>Mesajınızı Yazınız</li>';
        }
    
    } else {
    
        $emailerror .= "Mesajınız Başarıyla Gönderildi";
    
    
    
        // NOW SEND THE ENQUIRY
    
        $timestamp = date("F j, Y, g:ia");
    
        $messageproper ="\n\n" .
            "Name: " .
            ucwords($_POST['name']) .
            "\n" .
            "Email: " .
            ucwords($email) .
            "\n" .
            "Comments: " .
            $_POST['message'] .
            "\n" .
            "\n\n" ;
    
            $messageproper = trim(stripslashes($messageproper));
            mail($mailto, $subject, $messageproper, "Content-type: text/html; charset=iso-8859-9\nFrom: \"$vname\" <".$_POST['e_mail'].">\nReply-To: \"".ucwords($_POST['first_name'])."\" <".$_POST['e_mail'].">\nX-Mailer: PHP/" . phpversion() );
    
    }
    ?>
    
    <div id='emailerror'>
        <ul>
            <? echo $emailerror; ?>
        </ul>
    </div>
  • 20-09-2010, 17:56:15
    #3
    CS5
    Üyeliği durduruldu
    Hocam Malesef Aynı :S
  • 20-09-2010, 17:59:10
    #4
    mail gönderdiğiniz sayfanın en başına aşağıdaki kodu ekleyip bir deneyin

       header("Content-Type: text/html; charset=ISO-8859-9");
  • 20-09-2010, 18:05:55
    #5
    CS5
    Üyeliği durduruldu
    Hata verdi Hocam Üstteki Kodların tam Olarak neresine
  • 20-09-2010, 21:18:17
    #6
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Bu şekilde bir dene

    <?
    
    /************************
    * Variables you can change
    *************************/
    
    $mailto = "info@site.com";
    $cc = "";
    $bcc = "";
    $subject = "Email Konusu";
    $vname = "Web Sitesinden Gelen";
    
    
    /************************
    * do not modify anything below unless you know PHP/HTML/XHTML
    *************************/
    
    
    $email = $_POST['email'];
    
    function validateEmail($email)
    {
       if(eregi('^[a-zA-Z0-9._-]+@[a-zA-Z0-9-]+\.[a-zA-Z]{2,4}(\.[a-zA-Z]{2,3})?(\.[a-zA-Z]{2,3})?$', $email))
          return true;
       else
          return false;
    }
    
    
    if((strlen($_POST['name']) < 1 ) || (strlen($email) < 1 ) || (strlen($_POST['message']) < 1 ) || validateEmail($email) == FALSE){
        $emailerror .= 'Hata:';
    
        if(strlen($_POST['name']) < 1 ){
            $emailerror .= '<li>Adınızı Giriniz</li>';
        }
    
        if(strlen($email) < 1 ){
            $emailerror .= '<li>Email Giriniz</li>';
        }
    
        if(validateEmail($email) == FALSE) {
            $emailerror .= '<li>Email Adresi Geçersiz</li>';
        }
    
        if(strlen($_POST['message']) < 1 ){
            $emailerror .= '<li>Mesajınızı Yazınız</li>';
        }
    
    } else {
    
        $emailerror .= "Mesajınız Başarıyla Gönderildi";
    
    
    
        // NOW SEND THE ENQUIRY
    
        $timestamp = date("F j, Y, g:ia");
    
        $messageproper ="\n\n" .
            "Name: " .
            ucwords($_POST['name']) .
            "\n" .
            "Email: " .
            ucwords($email) .
            "\n" .
            "Comments: " .
            $_POST['message'] .
            "\n" .
            "\n\n" ;
    $basliklar  = "MIME-Version: 1.0" . "\r\nContent-type: text/html; charset=iso-8859-9"."\r\nFrom: ".$vname." <".$_POST['e_mail'].">"."\r\nReply-To: \"".ucwords($_POST['first_name'])."\" <".$_POST['e_mail'].">" ."\nX-Mailer: PHP/".phpversion();
    
            $messageproper = trim(stripslashes($messageproper));
            mail($mailto, $subject, $messageproper,$basliklar);
    
    }
    ?>
    
    <div id='emailerror'>
        <ul>
            <? echo $emailerror; ?>
        </ul>
    </div>
  • 21-09-2010, 11:37:35
    #7
    CS5
    Üyeliği durduruldu
    Malesef Aynı şlkjşklşklşujkşkkjgölkjlğğğ
  • 21-09-2010, 15:11:27
    #8
    $headers .= 'Content-Type: text/HTML; charset=ISO-8859-8' . "\r\n";
    $headers .= 'Content-Transfer-Encoding: 8bit'. "\n\r\n";

    bu headerlerı bir dene olmazsa.


    form sayfasının encode türüne bak unix ANSI mi UTF 8 mi ?
    sonra email okuduğun sayfanın encode türüne bak. oda ANSI veya UTF8 olabilir.

    sonrada aşağıdaki fonksiyonu kendine göre değiştirebilirsin.

    //php manuels den alınma japonca için
    $headers  = "MIME-Version: 1.0 \n" ;
    $headers .= "From: " .
           "".mb_encode_mimeheader (mb_convert_encoding($from_name,"ISO-2022-JP","AUTO")) ."" .
           "<".$from_email."> \n";
    $headers .= "Reply-To: " .
           "".mb_encode_mimeheader (mb_convert_encoding($from_name,"ISO-2022-JP","AUTO")) ."" .
           "<".$from_email."> \n";
     
       
    $headers .= "Content-Type: text/plain;charset=ISO-2022-JP \n";
    
       
    /* Convert body to same encoding as stated
    in Content-Type header above */
       
    $body = mb_convert_encoding($body, "ISO-2022-JP","AUTO");
  • 21-09-2010, 15:39:24
    #9
    bu harfler şlkjşklşklşujkşkkjgölkjlğğğ UTF 8 ye ait. charset=UTF-8 i dene