2015. 8. 26. 17:20ㆍProgramming/PHP
웹 소스 맨 상단에 추가 해줌.
header("Content-Type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=test.xls");
header("Content-Description:PHP4 Generated Data");
아래와 같은 헤더도 있으나, 현재까지는 위 3개로만으로도 다운이 가능하다.
header("Content-Type: application/octet-stream");
header("Content-Type-Description: File Transfer");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0,pre-check=0");
header("Pragma; public");
이걸 응용하여 버튼 클릭시 다운받게 해보자.
버튼 페이지(button.php)
<script> $.fn.outerHTML = function() { var el = $(this); if(!el[0]) return ""; if(el[0].outerHTML) { return el[0].outerHTML; } else { var content = el.wrap('<p/>').parent().html(); el.unwrap(); return content; } } function export_excel() { var exp=$('#export').outerHTML(); //id 값이 export인 태그부터 가져옴.(위함수) // var exp=$('#export').html(); => id값이 export 인 태그의 자식 태그들만 가져옴. $('#data').val(exp); $('#export_data').submit(); } </script> <div> <input type="button" value="Excel" onclick="export_excel()"> <form id="export_data" method="post" action="./Excel.php"> <input type="hidden" id="data" name="data" /> </form> </div> |
다운로드 실행 페이지(Excel.php)
header("Content-Type: application/vnd.ms-excel"); header("Content-Disposition: attachment; filename=test.xls"); header("Content-Description:PHP4 Generated Data"); $data = $_REQUEST['data']; echo "<meta content=\"application/vnd.ms-excel;charset=UTF-8;\" name=\"Content-type\">"; echo $data; |
'Programming > PHP' 카테고리의 다른 글
Fatal error: Maximum execution time of 30 seconds exceeded (0) | 2015.10.22 |
---|---|
error 메세지 출력 (0) | 2015.10.22 |
bitnami (0) | 2015.10.21 |
phpexcel 설치 (0) | 2015.10.13 |
index.php 삭제하기 (0) | 2015.09.09 |