Просмотров: 1001 * *
<script>
$(document).ready(function(){
$('#upload_csv').on("submit",function(e){
e.preventDefault();
$.ajax({
url:"<?php echo base_url(); ?>import",
method:"POST",
data:new FormData(this),
contentType:false,
cache:false,
processData:false,
success: function(data){
if(data=='Error1')
{
alert("Invalid File");
}
else if(data == "Error2")
{
alert("Please Select File");
}
else
{
$('#success').html(data);
}
}
})
});
});
</script>
<form id="upload_csv" method="post" enctype="multipart/form-data">
<input type="file" id="files" name="files">
<input type="submit" class="btn btn-primary" id="submit" name="submit">
</form>
Контроллер:
public function import()
{
if(!empty($_FILES["files"]["name"]))
{
$output = '';
$allowed_ext = array("csv");
$tmp = explode(".", $_FILES["files"]["name"]);
$extension = end($tmp);
if(in_array($extension, $allowed_ext))
{
$file_data = fopen($_FILES["files"]["tmp_name"], 'r');
print_r(fgetcsv($file_data));
}
else
{
echo 'Error1';
}
}
else
{
echo "Error2";
}
}
В этом коде я хочу импортировать csv file
в мою базу данных, а также переместить CSV-файл в папку. Теперь, что на самом деле происходит, когда я нажимаю на кнопку отправки, я использую print_r(fgetcsv($file_data));
, чтобы узнать вывод файла CSV, тогда он печатает
Array ( [0] => Id [1] => first_name [2] => last_name [3] => phone [4] => email )
но у меня есть 200 строк в моем CSV-файле. Итак, как я могу это сделать? Пожалуйста, помогите мне.
Спасибо