Я пытаюсь импортировать лист Excel, используя ajax, но он всегда возвращает ноль, когда я пытаюсь загрузить его. Я использую электронную таблицу PHP.
вот мой HTML код:
<div class="modal-body">
<?php echo form_open_multipart('', array('id' => 'form_upload_user')); ?>
<input type="hidden" name="csrf_lendingtree_app" value="<?php echo $this->security->get_csrf_hash(); ?>" />
<h3 class="upload_header_title">UPLOAD FILE</h3>
<div class="input-file-upload">
<input type="file" name="upload_file" multiple>
<img class="upload_icon" src="<?php echo base_url('metronic/theme/classic/assets/images/upload-icon.png'); ?>" alt="">
</div>
<a href="<?php echo base_url('leaderboard/User/template'); ?>" classs="upload_download_template">Download template</a>
<div class="upload_btn_action">
<button type="button" class="btn-user-back" name="button" data-dismiss="modal">BACK</button>
<button type="submit" class="btn-user-ok" name="button">OK</button>
</div>
</form>
</div>
вот мой ajax код:
$('#form_upload_user').on('submit', function(e) {
e.preventDefault();
$.ajax({
url: base_url + "User/bulk_upload_users",
data: new FormData(this),
dataType: "json",
contentType: false,
cache: false,
processData: false,
success: function(data) {
//if success close modal and reload ajax table
$("input[name='csrf_app']").each(function() {
$(this).val(data['csrf_app']);
});
console.log(data);
},
error: function(jqXHR, textStatus, errorThrown) {
alert('Error adding / update data');
}
});
});
и вот мой php код:
public function bulk_upload_users()
{
$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['upload_file']['name']) && in_array($_FILES['upload_file']['type'], $file_mimes)) {
$arr_file = explode('.', $_FILES['upload_file']['name']);
$extension = end($arr_file);
$reader = new \PhpOffice\PhpSpreadsheet\Reader\Xlsx();
$spreadsheet = $reader->load($_FILES['upload_file']['tmp_name']);
$sheetData = $spreadsheet->getActiveSheet()->toArray();
echo json_encode(array("status" => $sheetData,"csrf_app" => $this->security->get_csrf_hash()));
}else{
echo json_encode(array("status" => "Not Exist","csrf_app" => $this->security->get_csrf_hash()));
}
}
Я всегда получаю ошибку File "" does not exist.
, кто-нибудь сталкивался с такой ошибкой?
Любая помощь будет очень признательна.
Я уже застрял, и я не знаю, что делать, как исправить эту ошибку.