File manager - Edit - /home/autoph/public_html/connectv1/api/upload/upload_spreadsheet_tmp.php
Back
<?php ini_set('max_execution_time', '0'); set_time_limit(0); ini_set('memory_limit','-1'). include_once("../../cfg/db.php"); include_once("../../app/language/word_mapping.php"); include_once('../../vendor/autoload.php'); include_once("../../api/controllers/utility.php"); include_once("../../api/controllers/customer.php"); include_once("../../api/controllers/import.php"); $customer_class = new Customer(); $import = new Import(); if (!file_exists('files')) { mkdir('files', 0777, true); } if (!file_exists('logs')) { mkdir('logs', 0777, true); } if(!isset($_SESSION['user']['id'])){ echo "Session Expired."; exit; } if(!isset($_FILES['file']['name'])){ $return_arr["status"]=0; $return_arr["message"]=" Error has occured."; exit; } // Getting file name $filename = $_FILES['file']['name']; //Valid extension $valid_ext = array('xls', 'csv', 'xlsx'); // file extension $file_extension = pathinfo($filename, PATHINFO_EXTENSION); $file_extension = strtolower($file_extension); $location = "files/".$filename = $_FILES['file']['name']; // Check extension if(!in_array($file_extension,$valid_ext)){ $return_arr["status"]=0; $return_arr["message"]=" Invalid file type."; exit; } $maxsize = 50097152; $minsize = 1; if($_FILES['file']['size'] >= $maxsize || $_FILES['file']['size'] == 0 ){ $return_arr["status"]=0; $return_arr["message"]=" File too large. Image must less than ".round(($maxsize/1000000), 0)." megabytes."; echo json_encode($return_arr); exit; } //VALIDATIONS SUCCESS CONTINUE BELOW //process excel file move_uploaded_file($_FILES['file']['tmp_name'], $location); $file_type = \PhpOffice\PhpSpreadsheet\IOFactory::identify($location); $reader = \PhpOffice\PhpSpreadsheet\IOFactory::createReader($file_type); try { $spreadsheet = $reader->load($location); //remove excel after store to phpspreadsheet unlink($location); // $spreadsheet->getActiveSheet()->getStyle("K")->getNumberFormat()->setFormatCode("YYYY-MM-DD"); // $spreadsheet->getActiveSheet()->getStyle('K') // ->getNumberFormat() // ->setFormatCode(\PhpOffice\PhpSpreadsheet\Style\NumberFormat::FORMAT_DATE_YYYYMMDD2); $data = $spreadsheet->getActiveSheet()->toArray(); } catch (\Exception $e) { $return_arr["status"]=2; $return_arr["header_column_not_found_message"] = array(array('message'=>'<strong>Invalid spreadsheet file. Contact your system administrator.<br><span class="text-danger">Error:</span></strong> '.$e)); echo json_encode($return_arr); exit; } $data = array_map(array($utility_class, 'upperCaseNestedArray'), $data); $data = array_map(array($db, 'escape'), $data); $highestRow = $spreadsheet->getActiveSheet()->getHighestRow(); $highestColumn = $spreadsheet->getActiveSheet()->getHighestColumn(); $ColumnNumber = \PhpOffice\PhpSpreadsheet\Cell\Coordinate::columnIndexFromString($highestColumn); $GLOBALS['total_data_count'] = 0; $GLOBALS['data_count_list'] = ""; $header_column_found = false; foreach($data as $row){ //check if all value in row if not empty foreach($row as $row1){ if($utility_class->isNotEmpty($row1)){ break; } continue 2; } if(!$header_column_found){ //get matched field from database and excel globals $GLOBALS['record_id']= $import->getFieldFromExcel($row,$ColumnNumber,array('CUSTOMER ID')); $GLOBALS['company']= $import->getFieldFromExcel($row,$ColumnNumber,array('COMPANY')); $GLOBALS['dealer']= $import->getFieldFromExcel($row,$ColumnNumber,array('DEALER')); $GLOBALS['corporation']= $import->getFieldFromExcel($row,$ColumnNumber,array('CORPORATION')); $GLOBALS['firstname']= $import->getFieldFromExcel($row,$ColumnNumber,array('FIRSTNAME')); $GLOBALS['middlename']= $import->getFieldFromExcel($row,$ColumnNumber,array('MIDDLE NAME','MIDDLENAME')); $GLOBALS['lastname']= $import->getFieldFromExcel($row,$ColumnNumber,array('LASTNAME')); $GLOBALS['email']= $import->getFieldFromExcel($row,$ColumnNumber,array('EMAIL')); $GLOBALS['mobile']= $import->getFieldFromExcel($row,$ColumnNumber,array('MOBILE')); $GLOBALS['gender']= $import->getFieldFromExcel($row,$ColumnNumber,array('GENDER')); $GLOBALS['birthdate']= $import->getFieldFromExcel($row,$ColumnNumber,array('BIRTHDATE')); $GLOBALS['address']= $import->getFieldFromExcel($row,$ColumnNumber,array('ADDRESS')); $GLOBALS['city']= $import->getFieldFromExcel($row,$ColumnNumber,array('CITY')); //check required fields if( $utility_class->isNotEmpty($GLOBALS['record_id']) && $utility_class->isNotEmpty($GLOBALS['company']) && $utility_class->isNotEmpty($GLOBALS['dealer']) && $utility_class->isNotEmpty($GLOBALS['corporation']) && $utility_class->isNotEmpty($GLOBALS['firstname']) && $utility_class->isNotEmpty($GLOBALS['middlename']) && $utility_class->isNotEmpty($GLOBALS['lastname']) && $utility_class->isNotEmpty($GLOBALS['email']) && $utility_class->isNotEmpty($GLOBALS['mobile']) && $utility_class->isNotEmpty($GLOBALS['gender']) && $utility_class->isNotEmpty($GLOBALS['birthdate']) && $utility_class->isNotEmpty($GLOBALS['address']) && $utility_class->isNotEmpty($GLOBALS['city']) ){ $header_column_found = true; $GLOBALS['row_dms_headers'] = $row; continue; } }else{ $GLOBALS['total_data_count']++; //start counting of data if header is found $data_record_id = $import->checkExist($row,$GLOBALS['record_id'],$utility_class); $data_company = $import->checkExist($row,$GLOBALS['company'],$utility_class); $data_dealer = $import->checkExist($row,$GLOBALS['dealer'],$utility_class); $data_corporation = $import->checkExist($row,$GLOBALS['corporation'],$utility_class); $data_firstname = $import->checkExist($row,$GLOBALS['firstname'],$utility_class); $data_middlename = $import->checkExist($row,$GLOBALS['middlename'],$utility_class); $data_lastname = $import->checkExist($row,$GLOBALS['lastname'],$utility_class); $data_gender = $import->checkExist($row,$GLOBALS['gender'],$utility_class); $data_birthdate = $import->checkExist($row,$GLOBALS['birthdate'],$utility_class); $data_birthdate =$utility_class->fix_date_v2($data_birthdate); $data_email = $import->checkExist($row,$GLOBALS['email'],$utility_class); $data_mobile = $import->checkExist($row,$GLOBALS['mobile'],$utility_class); $data_address = $import->checkExist($row,$GLOBALS['address'],$utility_class); $data_city = $import->checkExist($row,$GLOBALS['city'],$utility_class); $data_dealer_id = $import->getDealerIdByNameOrCode($data_dealer,$utility_class,$db); $data_dms_company_arr = $import->getDmsCompanyId($data_dealer_id,$utility_class,$db); $data_dms_id = $data_dms_company_arr["dms"]; $data_company_id = $data_dms_company_arr["company"]; $data_gender_id = $import->getGenderID($data_gender,$utility_class); $data_city_id = $utility_class->isNotEmpty($data_city) ? $import->read_city_id($data_city,$db) : '' ; // echo $data_city_id."\n"; $customer_type = 1; //ind //2 corp if($utility_class->isNotEmpty($data_corporation)){ $customer_type = 2; $data_firstname = ''; $data_middlename = ''; $data_lastname = ''; $data_gender = ''; }else{ $data_corporation = ''; } //update customer $query_customer = "UPDATE `customer` SET `corporation_name`='$data_corporation', `first_name`='$data_firstname', `middle_name`='$data_middlename', `last_name`='$data_lastname', `gender_id`='$data_gender_id', `date_of_birth`='$data_birthdate', `type`='$customer_type' WHERE 1 AND id = $data_record_id"; $query_contact = "UPDATE `customer_contact` SET `address_1`='$data_address', `address_1_city`='$data_city_id', `email_1`='$data_email', `mobile_phone_1`='$data_mobile' WHERE 1 AND customer_id = $data_record_id"; $db->sql_query($query_customer); $db->sql_query($query_contact); } } if(!$header_column_found){ $return_arr["status"]=2; $return_arr["header_column_not_found_message"] = array(array('message'=>'<strong>Invalid spreadsheet file. Required field not found, download the template or contact your system administrator.</strong>')); echo json_encode($return_arr); exit; }else{ $GLOBALS['data_count_list'] = $GLOBALS['data_count_list']."<tr><td>Total Data</td> <td class='text-center'><h5><span class='badge bg-primary' >".$GLOBALS['total_data_count']."</span></h5></td></tr>"; returnData($filename); } function returnData($file_name){ $return_arr["status"] = 1; $return_arr["message"]=" Data Imported Successfully."; // $return_arr["selected_dms_name"] = $GLOBALS['dms_type_name']; // $return_arr["selected_dms_type"] = $GLOBALS['database_type_name']; // $return_arr["valid_data"] = $GLOBALS['inserted_count']; // $return_arr["invalid_data_list"] = $GLOBALS['not_inserted_list']; // $return_arr["show_error"] = $GLOBALS['show_error']; $return_arr["data_count_list"] = $GLOBALS['data_count_list']; $return_json = json_encode($return_arr); echo $return_json; } ?>
| ver. 1.4 |
.
| PHP 7.3.33 | Generation time: 0 |
proxy
|
phpinfo
|
Settings