엑셀업로드 방법좀요.. 채택완료

csv파일같은건 fgetcsv함수를 사용하면 쉽게 가져와지더라구요..

근데 엑셀은 도저히 안되서 어떻게하면 엑셀파일업로드읽기할수있죠??ㅠㅠ

 

<?php
$page_loc = "apply";
include "../head.php";

include "../PHPExcel-1.8/Classes/PHPExcel.php";
$objPHPExcel = new PHPExcel();// 엑셀 데이터를 담을 배열을 선언한다.
include "../PHPExcel-1.8/Classes/PHPExcel/IOFactory.php";

$uploaddir = '../PHPExcel-1.8/Classes/PHPExcel/Reader';  // 업로드 할 위치
$uploadfile = basename($_FILES['userfile']['name']);
echo '<pre>';
echo 'output:'.basename($_FILES['userfile']['tmp_name']);

// if(move_uploaded_file($_FILES['userfile']['tmp_name'], "$uploaddir/$uploadfile")) {
//   echo '<br>good file<br>';
// }else{
//   print '<br>avoid attack!<br>';
// }

echo 'detail debug :';
print_r($_FILES);
print "</pre>";

// $filename = './testA.xlsx'; // 읽어들일 엑셀 파일의 경로와 파일명을 지정한다.
$filename = iconv("UTF-8", "EUC-KR", $_FILES['userfile']['name']);// 읽어들일 엑셀 파일의 경로와 파일명을 지정한다.

try {
  // 업로드 된 엑셀 형식에 맞는 Reader객체를 만든다.
  $objReader = PHPExcel_IOFactory::createReaderForFile($filename);
    // 읽기전용으로 설정
    $objReader->setReadDataOnly(true);
    // 엑셀파일을 읽는다
    $objExcel = $objReader->load($filename);
    // 첫번째 시트를 선택
    $objExcel->setActiveSheetIndex(0);
    $objWorksheet = $objExcel->getActiveSheet();
    $rowIterator = $objWorksheet->getRowIterator();
    foreach ($rowIterator as $row) { // 모든 행에 대해서
        $cellIterator = $row->getCellIterator();
        $cellIterator->setIterateOnlyExistingCells(false);
    }

    $maxRow = $objWorksheet->getHighestRow();

    for ($i = 0 ; $i <= $maxRow ; $i++) {
        $name = $objWorksheet->getCell('A' . $i)->getValue(); // A열
        $addr1 = $objWorksheet->getCell('B' . $i)->getValue(); // B열

        echo $name;
        echo '<br/>';
    }
}
catch (exception $e) {
    echo $e;
}


?>
 

 

계속 작업중인데 도저히 안되네요 후..

답변 2개

채택된 답변
+20 포인트

순정 영카트를 보시면

관리자메뉴 -> 상품관리 -> 상품일괄등록시 엑셀을 사용하는 부분이있습니다.

/adm/shop_admin/itemexcel.php

/adm/shop_admin/itemexcelupdate.php

위 2파일을 참고하세요.

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

답변에 대한 댓글 1개

버전이 틀려서 최신버전처럼 사용이 안될꺼같아요..

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

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

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

로그인
🐛 버그신고