개발 Q&A

제목 force_download를 쓸때 파일제목 인코딩 깨짐 현상..
글쓴이 orangeheim 작성시각 2016/05/11 10:05:02
댓글 : 3 추천 : 0 스크랩 : 1 조회수 : 41210   RSS

force_download를 이용해서 파일 다운로드를 구현하였는데

크롬에서는 파일 제목이 깨지지 않고 잘 나오는데 ie에서는 제목이 깨져서 나옵니다 ㅠ

코드는

 

$data = file_get_contents($_SERVER['DOCUMENT_ROOT']."/contents/2016.pdf");

$name = '2016_제품소개서.pdf'; 

force_download($name, $data);

 

입니다.

크롬에서는 $name 이름으로 잘 출력되는데 ie 에서는 2016_荑⑤찓_좎_ _쒗뭹_뚭컻__湲곗뾽).pdf 이런식으로 저장이 됩니다 ㅠ

 다음글 아 힘듬니다. 브라우저 버젼 별 체크. 도와주세요. (4)
 이전글 컨트롤러에서 이메일을 보내는데... (1)

댓글

kaido / 2016/05/11 10:39:29 / 추천 0

원인은 알고 있는데 별다른 옵션이 없나 확인좀 했더니... 없네요.

원인은 크롬은 urlencode 를 알아서 풀어서 표현해 주고, IE는 그대로 출력해서깨지는 현상입니다.

[force_download 는 웹상으로 호출 하는 거라 파라메터가 url 창으로 넘어가버립니다. 이때 한글은 에러가 나지 않도록 urlencoding 을 시켜버립니다.]

옵션으로 utf-8 지원이 없나 했는데 별도로 없네요 ( ..)

일단 해결책 참고 =  http://underfree.tistory.com/180

 

orangeheim / 2016/05/11 11:02:58 / 추천 0
해봤는데도 안되네요ㅠㅠ 제가 잘못따라 한걸까요 ㅠㅠ
orangeheim / 2016/05/11 13:15:30 / 추천 1
iconv('utf-8','euc-kr',$filename);

으로 해결했습니다!