download.php / 아이폰에서 hwp파일 깨짐

download.php / 아이폰에서 hwp파일 깨짐

QA

download.php / 아이폰에서 hwp파일 깨짐

본문

아이폰에서 한글파일을 다운로드 받을 때 다운로드파일로 처리되지 않고

브라우저에서 그대로 외계어로 열려버리는 현상이 발현되어

애를먹다가 아래 방법으로 해결을 하였습니다. 

 

해당문제는 예전에 IE에서 한글파일 받을 때 보던 문제인데...

아무튼 몇시간동안 이것저것 시도해보다가

 

파일이름을 인코드하는 과정에서 일단 실마리를 찾았습니다.

 


$original = rawurlencode($file['bf_source']);

 

IE에서 파일이름에 공백 등을 처리하기위해 rawurlencode()나 urlencode()를 쓰는데 

이 함수를 쓰지 않고 그대로 

 


$original = $file['bf_source'];

 

로 하였더니 신기하게 정상적으로 다운이 되더군요

 

그래서

 


if (preg_match('~MSIE|Internet Explorer~i', $ua) || (strpos($ua, 'Trident/7.0') !== false && strpos($ua, 'rv:11.0') !== false))
{
  // do stuff for IE
  $original = rawurlencode($file['bf_source']);
}
else if(preg_match("/Edge/",$ua))
{
  // do stuff for Edge
  $original = rawurlencode($file['bf_source']);
}
else
{ 
  // safari, chrome and firefox, etc...
  $original = $file['bf_source'];
}
 
...

 

일단 여러가지 IE와 비 IE를 분기하여 코드를 짜게 되었는데 

일단 잘은 동작하는데...

 

제가 프로그래밍을 전문적으로 하지 않아 이게 적절한 처리인지 난감하네요...

 

저와같은 현상 경험하신 분 계실까요?? 

 

위와같은 처리가 다른 문제를 야기하지는 않을까요???

이 질문에 댓글 쓰기 :

답변 1

서버단에서 hwp 확장자 풀어놔야되는걸로 알고있는데

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

회원로그인

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