• 28-08-2010, 19:54:40
    #1
    Üyeliği durduruldu
    Merhabalar.
    sitemde php mail fonksiyonunu kullanıyorum. Ama mail gönderince türkçe karakterler çok bozuk çıkıyor. Örnek
    Unutmayınki yazı yazarken [paypal] etiketini koyduğunuz her yerde paypal bağış linki görünür. Aslında her zaman böyle bir bağış butonunun sitenizde durmasında fayda var. Belki birine gözlerini yaşartacak kadar faydanız olur. Birde zengin ve altın kalpli ise kesin basar o butona
    Aşağıda php dosyasının kodu mevcut. Bu sorunu düzenlemek için ne yapmalıyım. Karakter kümesi eklemem gerekiyor ama nereye ekleyeceğimi ve nasıl ekleyeceğimi bir türlü bulamadım. Lütfen yardımcı olun

      <?php
      		if(isset($_POST['submit'])) {
              error_reporting(E_NOTICE);
              function valid_email($str)
              {
              return ( ! preg_match("/^([a-z0-9\+_\-]+)(\.[a-z0-9\+_\-]+)*@([a-z0-9\-]+\.)+[a-z]{2,6}$/ix", $str)) ? FALSE : TRUE;
    		     }
              if($_POST['name']!='' && $_POST['email']!='' && valid_email($_POST['email'])==TRUE && strlen($_POST['comment'])>1)
              {
                  $to = preg_replace("([\r\n])", "", $_POST['receiver']);
    			  $from = preg_replace("([\r\n])", "", $_POST['email']);
    			  $subject = $_POST['name']. " web siteden selam yolladý";
                  $message = $_POST['comment'];
    			  
    			  $match = "/(bcc:|cc:|content\-type:)/i";
    				if (preg_match($match, $to) ||
    					preg_match($match, $from) ||
    					preg_match($match, $message)) {
    				  die("Header injection detected.");
    				}
                  $headers = "From: ".$from."\r\n";
       			  $headers .= "Reply-to: ".$from."\r\n";
                 
            if(mail($to, $subject, $message, $headers))
                  {
                      echo 1; //SUCCESS
                  }
                  else {
                      echo 2; //FAILURE - server failure
                  }
              }
              else {
           	  echo 3; //FAILURE - not valid email
    
              }
    		  }else{
    			 die("Direct access not allowed!");
    		   }
    
          ?>
  • 28-08-2010, 19:58:24
    #2
    $headers = "From: ".$from."\r\n";
    $headers .= "Reply-to: ".$from."\r\n";
    $headers .= "Content-type: text/html; charset=iso-8859-9\r\n";
    İlk iki satır senin dosyandan, sonraki satır eklemen gereken, karakter setini kendine göre ayarla.
  • 28-08-2010, 20:11:28
    #3
    Üyeliği durduruldu
    forumxtr adlı üyeden alıntı: mesajı görüntüle
    $headers = "From: ".$from."\r\n";
    $headers .= "Reply-to: ".$from."\r\n";
    $headers .= "Content-type: text/html; charset=iso-8859-9\r\n";
    İlk iki satır senin dosyandan, sonraki satır eklemen gereken, karakter setini kendine göre ayarla.
    Çok teşekkür ederim arkadaşım. Allah razı olsun. Sorun halloldu
  • 28-08-2010, 20:13:33
    #4
    Önemli değil, kolay gelsin.