테스트 사이트 - 개발 중인 베타 버전입니다

폼메일 한글깨짐 문의드려요~ 채택완료

h3style 7년 전 조회 2,489

폼메일로 문의글 받으려고 하는데요 ㅜㅜ

왜 메일에서 받으면 한글이 깨져 보이는거죠? ㅜㅜ

아래 보고 문제점좀 알려주시면 감사하겠습니다.

 

그리거 스팸으로 들어가는데 이유좀 알수 있을까요?

 

$cname = $_POST['cname']; $fromName = $_POST['cname']; $choice = $_POST['choice']; $tel1 = $_POST['tel1']; $tel2 = $_POST['tel2']; $tel3 = $_POST['tel3']; $fromMail = $_POST['email']; $subject = '진료문의'; $content = $_POST['content'];

$mailTo = "hxxx@nate.com";

 

// 구분자 생성 $boundary = "----" . uniqid("part");

// HEADER 생성 $header  = ""; $header .= "Return-Path: $fromMail\r\n";   // 반송 메일 주소 $header .= "from: ".$fromName." <$fromMail>\r\n"; // 보내는 사람 이름, 메일주소

// 첨부파일이 있는 경우 if(isset($_FILES['upfile']['tmp_name']) && $_FILES['upfile']['tmp_name']){     $file_name = time() . "_" . $_FILES['upfile']['name'];     $ext = strtolower(substr($file_name, (strrpos($file_name, '.') + 1)));       $save_dir = sprintf('%s/%s', $up_dir, $file_name);     $save_url = sprintf('%s/%s', $up_url, $file_name);       move_uploaded_file($_FILES["upfile"]["tmp_name"],$save_dir); }

// HEADER 작성 $header .= "MIME-Version: 1.0\r\n"; $header .= "Content-Type: Multipart/alternative; boundary = \"$boundary\"";

// 메일 내용 $mailcontent  = ""; $mailcontent .= "

"; $mailcontent .= ""; $mailcontent .= ""; $mailcontent .= ""; $mailcontent .= ""; if($file_name){  $mailcontent .= "";  $mailcontent .= "";" target="_blank" rel="noopener noreferrer">http://chubascocompany.com/web/upload".$file_name."'>".$file_name.""; } $mailcontent .= "
  이름  ".$fromName."
  이벤트  ".$choice."
  전화번호  ".$tel1."-".$tel2."-".$tel3."
  첨부파일  ".$file_name."
";

// 본문 $mailbody  = ""; $mailbody .= "--$boundary\r\n"; $mailbody .= "Content-Type: text/html; charset=euckr\r\n"; $mailbody .= "Content-Transfer-Encoding: 8bit\r\n\r\n"; $mailbody .= nl2br($mailcontent) . "\r\n";

$mailbody .= "--$boundary--\r\n\r\n";

$result = mail($mailTo,$subject,$mailbody,$header);

if($result){  $msg = "상담신청완료,  감사합니다. 확인후 연락드리겠습니다. ";   //$msg = iconv("ANSI","utf-8",$msg);  //$msg = iconv("UTF-8", "EUC-KR", $msg);  //echo $msg;  //exit;  //$encoding = mb_detect_encoding($msg,array("UTF-8","EUC-KR"));

 //echo $encoding;  //exit;

 echo ""; } else {  $msg = "메일 보내기 실패, 고객센터로 문의 주시기 바랍니다.";  //$msg = iconv("utf-8","euc-kr",$msg);    echo ""; } ?>

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트
p
7년 전

일단은 현재 php 문서 파일을 저장할때 UTF-8로 저장했는지 확인하시고요.

소스 중에서는

$mailbody .= "Content-Type: text/html; charset=euckr\r\n";

부분을

$mailbody .= "Content-Type: text/html; charset=utf-8\r\n";

로 변경해 보시고요.

현재 사이트가 웹호스팅을 받고 있는 사이트라면 업체에 확인해 보시고요.

개인 컴퓨터에서 도메인을 운영하신다면

화이트 도메인으로 추가해서 스팸으로 처리되는 것을 막아야 할 겁니다.

화이트 도메인 추가는 아래의 링크를 참조하세요.

http://ooz.co.kr/1">http://ooz.co.kr/1

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

플라이
7년 전

메일 한글깨지는 문제는 인코딩 문제로 보여지며

스팸으로 가는이유는 화이트도메인을 등록해 주셔야 합니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

h
h3style
7년 전
여기서 제목을 추가하려면 어떻게 해야되나요?

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인