엑셀 업로드 관련 질문입니다.

엑셀 업로드 관련 질문입니다.

QA

엑셀 업로드 관련 질문입니다.

답변 2

본문

안녕하세요? 엑셀파일을 업로드 해서 엑셀 파일 내용을 게시판에 글을 등록하는 작업을 하고 있습니다. 

항상 답변 감사합니다. 

어떤 자료를 참고하면 될까요?

그리고 제가 게시판 목록에 "엑셀 업로드" 버튼을 추가해서 버튼을 클릭하면 엑셀 파일 확장자인지 아닌지 확인하고 맞다면 엑셀 업로드를 하게 코드를 짜주었는데요 500 에러가 뜹니다. 한 번 봐주실 수 있나요?

항상 감사합니다! 

 

./board_list_update.php
 

<?php

include_once('./_common.php');

    if ($_POST['btn_submit'] == '엑셀 업로드') {

        if (isset($_FILES['uploaded_file'])) {

         $file = $_FILES['uploaded_file'];

 

         // 파일 확장자를 확인

         $fileType = pathinfo($file['name'], PATHINFO_EXTENSION);

         if ($fileType == 'xlsx' || $fileType == 'xls') {

          // 파일 확장자가 엑셀 파일인 경우

          include './excel_upload.php';

          exit;

         } else {

          // 파일 확장자가 엑셀 파일이 아닌 경우

          alert("엑셀 파일만 업로드 가능합니다.");

          exit;

        }

    } else {

        if ($_POST['btn_submit'] != '엑셀 업로드') {

            $count = count($_POST['chk_wr_id']);

     

            if (!$count) {

                alert($_POST['btn_submit'].' 하실 항목을 하나 이상 선택하세요.');

            }

        }

     

        if ($_POST['btn_submit'] == '선택삭제') {

            // include './delete_all.php';

            print("include './delete_all.php';");

        } else if ($_POST['btn_submit'] == '선택복사') {

            $sw = 'copy';

            // include './move.php';

            print("include './move.php';");

        } else if ($_POST['btn_submit'] == '선택이동') {

            $sw = 'move';

            // include './move.php';

            print("include './move.php';");

        } else if ($_POST['btn_submit'] == '선택숨김') {

            // include './secret_all.php';

            print("include './secret_all.php';");

        } else if ($_POST['btn_submit'] == '엑셀 다운로드') {

            // include './excel_download.php';

            print("include './excel_download.php';");

        } else {

            alert('올바른 방법으로 이용해 주세요.');

        }

    }

}

?>

이 질문에 댓글 쓰기 :

답변 2

$file = $_FILES['uploaded_file']['name'];

$fileType = pathinfo($file, PATHINFO_EXTENSION);

if( !$fileType || ! in_array($fileType , array('xlsx', 'xls')) || ! preg_match('/^.*\.(xlsx|xls)$/i', $file) ) {

    alert('하단 파일 경로의 확장자는 xlsx, xls 만 허용합니다.');

}else{

    include './excel_upload.php';

    exit;

}
이러게 해보죠 (막상 쓰고 보니 큰 차이는 없어보이긴 하네요..)

만약 이래도 문제가 될경우 

각각의 조건,조건 마다 echo 찍어 어디까지 들어가는지 확인해보죠...

include 자체도 우선 주석처리 하시고..

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 85
© SIRSOFT
현재 페이지 제일 처음으로