PHP & MySQL

강제로 파일다운로드 되게

관리자 | 2013.01.21 16:31 | 조회 9515

hwp파일이나, pdf같이 바로 열리는 확장자의 경우 불편할때도 있다.

 

-------------------------------------------------------------------------------------
#파일 강제 다운로드 헤더
$FileName = "파일명";
$File = "파일이 위치한경로".$FileName;

if(is_file($File)){ //실제로 파일이 있다면 다운로드 수행
  if (eregi("MSIE", $HTTP_USER_AGENT)){
    header("Content-type: application/octet-stream");
    header("Content-Length: ".filesize("$File"));  //파일경로
    header("Content-Disposition: attachment; filename=$FileName");  //다운로드창에보여질실제파일명
    header("Content-Transfer-Encoding: binary");
    header("Cache-Control: must-revalidate, post-check=0, pre-check=0");  // 바로 열기 가능하게
    header("Pragma: public");
    header("Expires: 0");
  }else{
    header("Content-type: file/unknown");
    header("Content-Length: ".filesize("$File"));
    header("Content-Disposition: attachment; filename=$FileName");
    header("Content-Description: PHP3 Generated Data");
    header("Pragma: no-cache");
    header("Expires: 0");
  }
  $fp = fopen($File, "rb");
  if(fpassthru($fp)){ // 다운로드가 완료되면
    //여기에서 다운로드 카운트를 올리면 됨다.(필요없으면 안해도 됨)
  }else{
    fclose($fp);
  }
}else{ // 파일이 없는 경우
  echo "파일이 존재하지 않습니다."; // 단순히 처리 했습니다만, 알아서 처리하시면 될것으로 생각됩니다.(필요 없다면 생략!)
}
-------------------------------------------------------------------------------------

twitter facebook me2day 요즘
38개(2/2페이지)
PHP & MySQL
번호 제목 글쓴이 조회 날짜
18 [MYSQL] semi join으로 인한 비효율을 제거. 관리자 6118 2013.05.15 12:14
17 [PHP] 웹문서 긁어와서 저장 관리자 7286 2013.05.10 12:37
16 [MYSQL] MYSQL DB튜닝 관리자 6146 2013.04.05 10:15
15 [MYSQL] 자주쓰는 MYSQL 관리자 4926 2013.04.05 10:14
14 [PHP] 팝업방지 BHO 사진 관리자 9285 2013.02.28 14:54
>> [PHP] 강제로 파일다운로드 되게 관리자 9516 2013.01.21 16:31
12 [MYSQL] DB생성+ 계정 셋팅 관리자 3690 2013.01.21 15:15
11 [PHP] 리눅스 서버관리 관리자 4196 2013.01.21 15:14
10 [PHP] SI, SM, ERP, EIP, EAI, CMMS, CRM, SCM, GW, KMS 관리자 8840 2013.01.21 15:13
9 [PHP] eclipse 3.7 pdt php 셋팅방법 첨부파일 관리자 6363 2013.01.21 15:12
8 [PHP] PHP 개발 보안가이드 첨부파일 관리자 7260 2013.01.21 15:10
7 [PHP] 파일 업로드 구현. 쓰기, 수정 관리자 4294 2013.01.21 15:09
6 [PHP] 엑셀다운, 숫자를 문자로 인식 관리자 9388 2013.01.21 15:09
5 [MYSQL] union order by 관리자 3870 2013.01.21 14:24
4 [PHP] 네이버 지도 api 관리자 5184 2013.01.21 14:22
3 [PHP] 특정 날짜 계산 관리자 4419 2013.01.21 14:21
2 [PHP] 한글 잘림 없이 substr처리 관리자 5118 2013.01.21 14:20
1 [PHP] checkbox 배열 값 넘기기 관리자 12903 2013.01.21 14:18
많이 본 글
댓글 많은 글