테스트 사이트 - 개발 중인 베타 버전입니다

a태그를 사용해서 hwp파일 다운로드할때 익스에서 깨져서 보이는 현상 질문 채택완료

blue4u 6년 전 조회 5,251

게시판 관리자에서 상단내용 부분에 태그를 사용했는데요.

 

a 태그를 걸어서 hwp 문서를 다운할려고 하는데요.

크롬에서는 이상이 없는데 익스에서는 깨져 나오는데 방법이 없을까요

 

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트

출처 : https://zetawiki.com/wiki/PHP_%ED%8C%8C%EC%9D%BC_%EB%8B%A4%EC%9A%B4%EB%A1%9C%EB%93%9C_%EA%B5%AC%ED%98%84

 

download

 

 

download.php

header("Pragma: public"); header("Expires: 0"); header("Content-Type: application/octet-stream"); header("Content-Disposition: attachment; filename=".$filename); header("Content-Transfer-Encoding: binary"); header("Content-Length: ".$filesize);

ob_clean(); flush(); readfile($_GET['file']);

로그인 후 평가할 수 있습니다

답변에 대한 댓글 5개

티로그
6년 전
이코드 사용하면 확장자php도 다운로드 가능한 것 아닌가요
확장자 제한을 추가해야 할 것 같네요
왕계란
6년 전
조언 감사합니다.
$extension 이 변수를 이용해서 제한을 하면 될 것 같습니다.
남은 건 질문하신 분이 직접 구현하시리라 봅니다. ㅎㅎ
문제가 된다면 애초에 file 변수로 값을 넘길 때 파일명만 넘기고 디렉토리는 download.php 파일 내에서 강제하면 문제가 될 건 없어 보입니다.
그리고 다운로드 디렉토리는 관리자만 접근하면 처리하구요.
b
blue4u
6년 전
너무 감사드립니다^^
허걱김선생
6년 전
$extension 이 변수를 이용해서 제한을 하면 될 것 같습니다.
이거는 어떻게 하는건가요?
왕계란
6년 전
if(in_array($extension, array("php", "html"))) {
echo "<script>alert('허용된 확장자가 아닙니다.'); history.back();</script>";
exit;
}

댓글을 작성하려면 로그인이 필요합니다.

크롬에선 hwp을 웹페이지에서 바로 볼수 있지만 익스는 플러그인을 설치해야합니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

b
blue4u
6년 전
따로 해결방법은 없나요? 방문자가 개별적으로 해결하는거 말고요

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인