게시판 엑셀 다운로드

게시판 엑셀 다운로드

QA

게시판 엑셀 다운로드

본문

엑셀이라는 폴더를 만들어서 그안에 다운로드.php 

 

 

 

<?php
include_once('./common.php');

if ($is_admin != 'super') {
    alert('관리자만 접근 가능합니다.');
}

// PhpSpreadsheet 라이브러리 로드
require 'vendor/autoload.php';

use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
use PhpOffice\PhpSpreadsheet\IOFactory;

// 데이터베이스에서 게시판 목록을 가져옵니다.
$sql = "SELECT wr_1, wr_subject, wr_content, wr_2, wr_3, wr_name FROM {$g5['write_prefix']}board_table WHERE bo_table = '게시판ID'";
$result = sql_query($sql);
$rows = array();
while ($row = sql_fetch_array($result)) {
    $rows[] = $row;
}

// PhpSpreadsheet 객체를 생성합니다.
$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();

// 엑셀 파일의 첫 번째 행에 컬럼 이름을 씁니다.
$sheet->setCellValue('A1', 'wr_1');
$sheet->setCellValue('B1', 'wr_subject');
$sheet->setCellValue('C1', 'wr_content');
$sheet->setCellValue('D1', 'wr_2');
$sheet->setCellValue('E1', 'wr_3');
$sheet->setCellValue('F1', 'wr_name');

// 데이터를 엑셀 파일에 씁니다.
$rowNum = 2;
foreach ($rows as $row) {
    $sheet->setCellValue('A' . $rowNum, $row['wr_1']);
    $sheet->setCellValue('B' . $rowNum, $row['wr_subject']);
    $sheet->setCellValue('C' . $rowNum, $row['wr_content']);
    $sheet->setCellValue('D' . $rowNum, $row['wr_2']);
    $sheet->setCellValue('E' . $rowNum, $row['wr_3']);
    $sheet->setCellValue('F' . $rowNum, $row['wr_name']);
    $rowNum++;
}

// 엑셀 파일을 브라우저로 전송합니다.
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment;filename="board_list.xlsx"');
header('Cache-Control: max-age=0');
$writer = IOFactory::createWriter($spreadsheet, 'Xlsx');
$writer->save('php://output');
exit;
?>

 

 

이렇게 했는데 다운로드가 안되는데  혹시 잘못되었거나 아니면 어디서 설정하는 값이 있을까요 >?

 

고수님들 답변 부탁드립니다. 꾸벅 ( _ _ )

이 질문에 댓글 쓰기 :

답변 3

$sql = "SELECT wr_1, wr_subject, wr_content, wr_2, wr_3, wr_name FROM {$g5['write_prefix']}board_table WHERE bo_table = '게시판ID'"; <==이게 잘못 되었습니다. 다음처럼 하세요

 

$write_table= $g5['write_prefix'].'게시판ID';

$sql = "SELECT wr_1, wr_subject, wr_content, wr_2, wr_3, wr_name FROM $write_table ";

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

회원로그인

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