제목 | header를 이용한 파일 다운로드시 특수문자파일 에러 질문합니다. | ||
---|---|---|---|
글쓴이 | beop | 작성시각 | 2015/04/02 12:54:17 |
|
|||
안녕하세요. 도움을 얻고자 질문 드립니다. 아직 초짜라 어렵게 header를 이용한 파일다운로드를 구현했습니다.. 문제는 특수문자를 포함한 파일명일때는 에러가 난다는 것입니다.. [view] ------------------------------------------- <a href="/download/index/text.jpg">다운로드</a> [controller] - download ------------------------------------------- $data['file_name'] = $this->uri->segment(3); //text.jpg 입니다. $this->load->view('/download_v', $data); [view] - download_v ------------------------------------------- $file = $_SERVER['DOCUMENT_ROOT']."/new/upload/brd_attch/".$file_name; //저장되어있는 경로 입니다. $file = iconv("utf-8","euc-kr",$file); header('Content-Description: File Transfer'); header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename='.basename($file)); header('Content-Transfer-Encoding: binary'); header('Expires: 0'); header('Cache-Control: must-revalidate'); header('Pragma: public'); header('Content-Length: ' . filesize($file)); readfile($file); exit; 이런식으로 파일 다운로드가 잘됩니다. 문제는 파일명이 test.hwp 는 다운로드가 잘되는데 test_(1).hwp 이렇게 특수문자가 들어가면 파일을 다운로드 받으면 test_& # 4 0 이렇게 바뀌어서 다운로드가 되어 파일이 깨집니다. urlencode도 해봤고 파일전부 UTF-8입니다.. 되질 않네요. 도움 부탁 드립니다. 감사합니다.ㅠㅠ |
|||
다음글 | 테이블 최상단 고정은 어떻게 시키나요? (4) | ||
이전글 | autocomplete에 대해서 문제가 있습니다. (4) | ||
beop
/
2015/04/02 21:55:02 /
추천
0
|
다운로드 경로는 변경된 이름으로 하고 파일 다운로드 이름은 실제이름을 불러와서 작업해서 일단 해결했습니다.