2013-04-22 5 views
1

내 프로젝트에 codeignator 프레임 워크를 사용하고 있습니다. 일부 일본어 문자가 배달 될 때 전자 메일에서 누락되었습니다. 컨트롤러를 확인하고 모든 charcters가 있습니다. 구성, 전자 메일 charaset을 확인하고 utf-8을 발견했습니다. . 나는 또한이 "header ('Content-Type : text/html; charset = utf-8');" . 또한 동일한 프로젝트에서 보낸 메일에는 문제가 없으며이 특정 이메일에 대해서만 문제가 있습니다. 또한일본어 문자가 전자 메일에서 누락되었습니다

// Set mail config variables 
$config['charset'] = 'utf-8'; 
$this->email->initialize($config);    

: 당신이 당신의 다른 이메일 코드를 시작하기 전에 대신 당신이 캐릭터 세트의 구성을 설정해야합니다, 헤더가 필요하지 않습니다 {

   if($this->lan == "en"){ 

       $site_name  = "xyz.com"; 
       $fromname   = "xyz.com"; 
       $subject   = 'sub 【'.$site_name.'】'; 
       $content   = " Content of email from ".$site_name."<br /><br />"; 
       }else{ 

       $site_name   = "japanesename.com"; 
       $fromname   = "japanesename.com"; 

       header('Content-Type: text/html;charset=utf-8'); 

       $subject   = 'japanesesub【'.$site_name.'】'; 
       $content   = " 

            jp content".$site_name."<br />"; 
       } 

     $to     = $email; 
       $this->load->library('email'); 
       $this->email->set_mailtype('html'); 
       $this->email->from($fromemail,$fromname); 
       $this->email->to($to); 
       $this->email->subject($subject); 
       $this->email->message($content); 
       $this->email->send(); 
       redirect('redirect_url'); 
} 
+0

자세한 내용! 본문은 어디에서 오는가? 이메일에 어떻게 삽입됩니까? 어떻게 이메일을 보내시겠습니까? 당신이 제공 할 수있는 많은 세부 사항으로, 제발! – deceze

+0

다음을보십시오. http://social.msdn.microsoft.com/Forums/en-US/sqldriverforphp/thread/46cb4626-716f-4fd7-af49-4b6fe1e5b955/ –

답변

0

공공 기능 이메일()으로 문자열을 인코딩해야합니다. 이미 utf-8로 인코딩 된 경우에도 마찬가지입니다.

$content = mb_convert_encoding($content, "UTF-8"); 
관련 문제