Saya membuat nấm tải lên tập tin excel. Pada saat mencoba proses tải lên, lỗi muncul Đã gặp phải một ngoại lệ chưa được phát hiện Loại. Thông báo lỗi. Không tìm thấy lớp 'PhpOffice\PhpSpreadsheet\Reader\Xls'Tên tệp. C. \xampp-7. 4. 16\htdocs\webaplikasi\application\controls\menu_admin. số dòng php. 657vạch ngược. Tập tin. C. \xampp-7. 4. 16\htdocs\webaplikasi\index. php Bộ điều khiển public function upload_dummy() { $data = array(); //$data['title'] = 'Import Excel Sheet | Indo Asia'; //$data['breadcrumbs'] = array('Home' => '#'); // Load form validation library $this->load->library('form_validation'); $this->form_validation->set_rules('fileURL', 'Upload File', 'callback_checkFileValidation'); if($this->form_validation->run() == false) { $this->load->view('server_admin/db1/import_statistic/dummy_lokal', $data); } else { // If file uploaded if(!empty($_FILES['fileURL']['name'])) { // get file extension $extension = pathinfo($_FILES['fileURL']['name'], PATHINFO_EXTENSION); if($extension == 'xls'){ $reader = new \PhpOffice\PhpSpreadsheet\Reader\Xls(); } elseif($extension == 'xlsx') { $reader = new \PhpOffice\PhpSpreadsheet\Reader\Xlsx(); } else { $reader = new \PhpOffice\PhpSpreadsheet\Reader\Csv(); } // file path $spreadsheet = $reader->load($_FILES['fileURL']['tmp_name']); $allDataInSheet = $spreadsheet->getActiveSheet()->toArray(null, true, true, true); // array Count $arrayCount = count($allDataInSheet); $flag = 0; $createArray = array( 'NoPengajuan', 'TanggalPIB', 'TanggalBLAWB', 'PelabuhanAsal', 'PelabuhanTujuan', 'Importir', 'AlamatImportir', 'PPJK', 'AlamatPPJK', 'Pemasok', 'AlamatPemasok', 'NegaraPemasok', 'HS', 'UraianBarang', 'Quantity', 'KodeSatuan', 'Berat', 'HargaCIF', 'MataUang', 'NPWP' ); $makeArray = array( 'NoPengajuan' => 'NoPengajuan', 'TanggalPIB' => 'TanggalPIB', 'TanggalBLAWB' => 'TanggalBLAWB', 'PelabuhanAsal' => 'PelabuhanAsal', 'PelabuhanTujuan' => 'PelabuhanTujuan', 'Importir' => 'Importir', 'AlamatImportir' => 'AlamatImportir', 'PPJK' => 'PPJK', 'AlamatPPJK' => 'AlamatPPJK', 'Pemasok' => 'Pemasok', 'AlamatPemasok' => 'AlamatPemasok', 'NegaraPemasok' => 'NegaraPemasok', 'HS' => 'HS', 'UraianBarang' => 'UraianBarang', 'Quantity' => 'Quantity', 'KodeSatuan' => 'KodeSatuan', 'Berat' => 'Berat', 'HargaCIF' => 'HargaCIF', 'MataUang' => 'MataUang', 'NPWP' => 'NPWP' ); $SheetDataKey = array(); foreach ($allDataInSheet as $dataInSheet) { foreach ($dataInSheet as $key => $value) { if (in_array(trim($value), $createArray)) { $value = preg_replace('/\s+/', '', $value); $SheetDataKey[trim($value)] = $key; } } } $dataDiff = array_diff_key($makeArray, $SheetDataKey); if (empty($dataDiff)) { $flag = 1; } // match excel sheet column if ($flag == 1) { for ($i = 2; $i <= $arrayCount; $i++) { $addresses = array(); $NoPengajuan = $SheetDataKey['NoPengajuan']; $TanggalPIB = $SheetDataKey['TanggalPIB']; $TanggalBLAWB = $SheetDataKey['TanggalBLAWB']; $PelabuhanAsal = $SheetDataKey['PelabuhanAsal']; $PelabuhanTujuan = $SheetDataKey['PelabuhanTujuan']; $Importir = $SheetDataKey['Importir']; $AlamatImportir = $SheetDataKey['AlamatImportir']; $PPJK = $SheetDataKey['PPJK']; $AlamatPPJK = $SheetDataKey['AlamatPPJK']; $Pemasok = $SheetDataKey['Pemasok']; $AlamatPemasok = $SheetDataKey['AlamatPemasok']; $NegaraPemasok = $SheetDataKey['NegaraPemasok']; $HS = $SheetDataKey['HS']; $UraianBarang = $SheetDataKey['UraianBarang']; $Quantity = $SheetDataKey['Quantity']; $KodeSatuan = $SheetDataKey['KodeSatuan']; $Berat = $SheetDataKey['Berat']; $HargaCIF = $SheetDataKey['HargaCIF']; $MataUang = $SheetDataKey['MataUang']; $NPWP = $SheetDataKey['NPWP']; $NoPengajuan = filter_var(trim($allDataInSheet[$i][$NoPengajuan]), FILTER_SANITIZE_STRING); $TanggalPIB = filter_var(trim($allDataInSheet[$i][$TanggalPIB]), FILTER_SANITIZE_STRING); $TanggalBLAWB = filter_var(trim($allDataInSheet[$i][$TanggalBLAWB]), FILTER_SANITIZE_EMAIL); $PelabuhanAsal = filter_var(trim($allDataInSheet[$i][$PelabuhanAsal]), FILTER_SANITIZE_STRING); $PelabuhanTujuan = filter_var(trim($allDataInSheet[$i][$PelabuhanTujuan]), FILTER_SANITIZE_STRING); $Importir = filter_var(trim($allDataInSheet[$i][$Importir]), FILTER_SANITIZE_STRING); $AlamatImportir = filter_var(trim($allDataInSheet[$i][$AlamatImportir]), FILTER_SANITIZE_STRING); $PPJK = filter_var(trim($allDataInSheet[$i][$PPJK]), FILTER_SANITIZE_STRING); $AlamatPPJK = filter_var(trim($allDataInSheet[$i][$AlamatPPJK]), FILTER_SANITIZE_STRING); $Pemasok = filter_var(trim($allDataInSheet[$i][$Pemasok]), FILTER_SANITIZE_STRING); $AlamatPemasok = filter_var(trim($allDataInSheet[$i][$AlamatPemasok]), FILTER_SANITIZE_STRING); $NegaraPemasok = filter_var(trim($allDataInSheet[$i][$NegaraPemasok]), FILTER_SANITIZE_STRING); $HS = filter_var(trim($allDataInSheet[$i][$HS]), FILTER_SANITIZE_STRING); $UraianBarang = filter_var(trim($allDataInSheet[$i][$UraianBarang]), FILTER_SANITIZE_STRING); $Quantity = filter_var(trim($allDataInSheet[$i][$Quantity]), FILTER_SANITIZE_STRING); $KodeSatuan = filter_var(trim($allDataInSheet[$i][$KodeSatuan]), FILTER_SANITIZE_STRING); $Berat = filter_var(trim($allDataInSheet[$i][$Berat]), FILTER_SANITIZE_STRING); $HargaCIF = filter_var(trim($allDataInSheet[$i][$HargaCIF]), FILTER_SANITIZE_STRING); $MataUang = filter_var(trim($allDataInSheet[$i][$MataUang]), FILTER_SANITIZE_STRING); $NPWP = filter_var(trim($allDataInSheet[$i][$NPWP]), FILTER_SANITIZE_STRING); //fungsi untuk merubah tipe data datetime ke string/varchar $newTanggalPIB = date("d/m/Y", strtotime($TanggalPIB)); $newTanggalBLAWB = date("d/m/Y", strtotime($TanggalBLAWB)); $fetchData[] = array( 'NoPengajuan' => $NoPengajuan, 'TanggalPIB' => $newTanggalPIB, 'TanggalBLAWB' => $newTanggalBLAWB, 'PelabuhanAsal' => $PelabuhanAsal, 'PelabuhanTujuan' => $PelabuhanTujuan, 'Importir' => $Importir, 'AlamatImportir' => $AlamatImportir, 'PPJK' => $PPJK, 'AlamatPPJK' => $AlamatPPJK, 'Pemasok' => $Pemasok, 'AlamatPemasok' => $AlamatPemasok, 'NegaraPemasok' => $NegaraPemasok, 'HS' => $HS, 'UraianBarang' => $UraianBarang, 'Quantity' => floatval($Quantity), 'KodeSatuan' => $KodeSatuan, 'Berat' => floatval($Berat), 'HargaCIF' => floatval($HargaCIF), 'MataUang' => $MataUang, 'NPWP' => $NPWP ); } $data['dataInfo'] = $fetchData; $this->upload_dummy_m->setBatchImport($fetchData); $this->upload_dummy_m->importData(); } else { echo "Please import correct file, did not match excel sheet column"; } $this->load->view('server_admin/db1/import_statistic/preview_dummy_lokal', $data); } } } // checkFileValidation public function checkFileValidation($string) { $file_mimes = array('text/x-comma-separated-values', 'text/comma-separated-values', 'application/octet-stream', 'application/vnd.ms-excel', 'application/x-csv', 'text/x-csv', 'text/csv', 'application/csv', 'application/excel', 'application/vnd.msexcel', 'text/plain', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' ); if(isset($_FILES['fileURL']['name'])) { $arr_file = explode('.', $_FILES['fileURL']['name']); $extension = end($arr_file); if(($extension == 'xlsx' || $extension == 'xls' || $extension == 'csv') && in_array($_FILES['fileURL']['type'], $file_mimes)){ return true; }else{ $this->form_validation->set_message('checkFileValidation', 'Please choose correct file.'); return false; } }else{ $this->form_validation->set_message('checkFileValidation', 'Please choose a file.'); return false; } }Người mẫu. _batchImport = $batchImport; } // save data public function importData() { $data = $this->_batchImport; $this->db->insert_batch('dummy', $data); } // get data list public function dataList() { $this->db->select(array( 'd.NoPengajuan', 'd.TanggalPIB', 'd.TanggalBLAWB', 'd.PelabuhanAsal', 'd.PelabuhanTujuan', 'd.Importir', 'd.AlamatImportir', 'd.PPJK', 'd.AlamatPPJK', 'd.Pemasok', 'd.AlamatPemasok', 'd.NegaraPemasok', 'd.HS', 'd.UraianBarang', 'd.Quantity', 'd.KodeSatuan', 'd.Berat', 'd.HargaCIF', 'd.MataUang', 'd.NPWP' )); $this->db->from('dummy as d'); $query = $this->db->get(); return $query->result_array(); } }View (stelah proses upload, akan redirect ke view ini). Web | Tabel Dummy session->userdata('level') == 'administrator') { include 'application/views/komponen/navbar_admin.php'; //navbar } elseif ($this->session->userdata('level') == 'manager') { include 'application/views/komponen/navbar_manager.php'; //navbar } elseif ($this->session->userdata('level') == 'staff') { include 'application/views/komponen/navbar_staff.php'; //navbar } ?>mohon bantuannya, terima kasih |