게시물 메일 발송시 한글 깨지는 문제
본문
그누보드를 이용해 사이트 제작중입니다.
전에도 몇번 남겼는데 현재 프로그래머가 없어서 제가 디자인도 하고 게시판도 달고
문제가 생기면 해결까지 해야하는 어려운 상황이구요 ㅜㅜ
서버에서 폼메일 발송을 막아놔서 그누보드 자체 기능인 메일 발송은 사용을 못 합니다.
그래서 따로 메일폼을 만든 다음 자체 메일 서버를 이용해(??) 메일을 보내는 식으로 하는데요...
이 작업은 예전에 프로그래머가 있을 때 한번 했었어요.
그래서 그 소스를 따다 붙여봤는데 어쨌든 하루종일 삽질해서 메일 발송까진 성공했어요.
그런데 메일 제목의 한글이 자꾸 깨지네요.. 내용은 괜찮은데요 ㅠㅠ
물어봤더니 제목 인코딩 바꾸는걸 해주라고...
$mailForm = iconv("UTF-8", "EUC-KR", $mailForm);
페이지 내에 이런 소스가 있던데 이걸 제목에도 써보래요..
mailForm 대신 subject를 쓰면 되나? 해서 해봤더니... 안 되네요;;
제목에 iconv를 써라, 고 한다면 어떻게 써야하는지... 코드 한 줄 부탁드립니다 ㅜㅜ
ps. 그런데 희안하게 네이버는 이렇게 하나 저렇게 하나 한글이 잘 들어가네요.
저희 메일로 보내니 제목은 괜찮은데 내용이 다 깨지고요, 다음은 반대로 내용은 나오는데 제목은 깨져요 ㅋ;;;;
답변 2
지금 질문해 주신 내용이 많이 부족합니다..
제 부족한 지식이나마 좀 보태보자면,
$mailForm 이건 php의 변수입니다.
그리고 $mailForm = 블라블라($mailForm) 이런 형식인건
이전에 $mailForm 이라는 변수에 무언가 값을 담아 두었고,
$mailForm 이 변수에 담겨있는 기존 값을, 블라블라 처리를 한뒤 다시 $mailForm 여기에 저장한다.
라는 거죠.
제목에 대한 변수가 단순히 $subject 라면 아마 해결이 되셨을테지만, 질문에 안된다고 하시는 걸보면
제목에 대한 변수가 다른 이름으로 존재하는 것입니다.
이 부분은 해당 코드를 열어보지 않고서는 알수없는 부분이죠 ㅜㅜ
$mailForm = file_get_contents("http://URL/gnuboard4/bbs/write.mail.form.html");
$mailForm = str_replace("{datetime}", $g4[time_ymdhis], $mailForm);
$mailForm = str_replace("{name}", preg_replace("/[ #\&\+\-%@=\/\\\:;,\.'\"\^`~\_|\!\?\*$#<>()\[\]\{\}]/i", "", $wr_name), $mailForm);
$mailForm = str_replace("{ca_name}", $ca_name, $mailForm);
$mailForm = str_replace("{phone}", $wr_1, $mailForm);
$mailForm = str_replace("{fax}", $wr_2, $mailForm);
$mailForm = str_replace("{company}", $wr_3, $mailForm);
$mailForm = str_replace("{email}", $wr_email, $mailForm);
$mailForm = str_replace("{subject}", $wr_subject, $mailForm);
$mailForm = str_replace("{content}", nl2br($wr_content), $mailForm);
//$mailForm;
$mailForm = iconv("UTF-8", "EUC-KR", $mailForm);
답변을 작성하시기 전에 로그인 해주세요.