회원메일 보내기 시 첨부파일 한글깨짐 문의드립니다.

회원메일 보내기 시 첨부파일 한글깨짐 문의드립니다.

QA

회원메일 보내기 시 첨부파일 한글깨짐 문의드립니다.

본문

안녕하세요.

그누보드 4 utf-8 이용중에 있습니다.

회원메일 보낼 때 첨부파일을 보내고 있습니다.

 

// 첨부파일이 있을때 

for ($i=1; $i<=$attach; $i++) 

    if ($_FILES["file".$i][name]) 

       $file[] = attach_file($_FILES["file".$i][name], $_FILES["file".$i][tmp_name]); 

$_FILES["file".$i][tmp_name])); 

 

mailer($config[cf_title], $member[mb_email], $email, $subject, $content, 1, $file);

 

게시판 검색하여 mail_select_update.php을 수정했습니다. 첨부파일을 보내면 잘 보내지는데

첨부파일명이 한글일 경우 파일명이 �����hwp와 같이 깨져서 보내집니다. 

영문은 잘 보내지구요.

 

그래서 

$file[] = attach_file($_FILES["file".$i][name], $_FILES["file".$i][tmp_name]);  이 부분을  

$file[] = attach_file(iconv("UTF-8", "EUC-KR", $_FILES["file".$i][name], $_FILES["file".$i][tmp_name])); 이렇게 변경하여 시도해 보면 에러가 나서 첨부가 되지 않습니다. 

 

현재 utf-8에 설치가 되어 있는데요

 

도움 부탁드리겠습니다.

이 질문에 댓글 쓰기 :

답변 2

iconv 로 해결 안될경우

 

1) urlencode 로 attach_file 함수에 보내고,

  $file[] = attach_file(urlencode($_FILES['file'.$i]['name']), $_FILES['file'.$i]['tmp_name']);

 

2) attach_file  함수에서  move_uploaded_file 처리후  urldecode 로 파일이름 바꿈.

function attach_file($filename, $tmp_name)
{
    // 서버에 업로드 되는 파일은 확장자를 주지 않는다. (보안 취약점)
    $dest_file = ...

    move_uploaded_file($tmp_name, $dest_file);
    $filename = urldecode($filename);
    $tmpfile = array("name" => $filename, "path" => $dest_file);

    return $tmpfile;
}

 

 

답변을 작성하시기 전에 로그인 해주세요.
전체 123,657 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT