Я нашел код с этого сайта http://itsolutionstuff.com/post/laravel-56-import-export-to-excel-and-csv-exampleexample.html
Это мой маршрут после редактирования:
Route::post('barang', 'BarangController@importExcel')->name('barang');
Это их контроллер, и я просто добавляю на foreach:
public function importExcel(Request $request)
{
$request->validate([
'import_file' => 'required'
]);
$path = $request->file('import_file')->getRealPath();
$data = Excel::load($path)->get();
if($data->count()){
foreach ($data as $key => $value) {
$arr[] = [
'kode_barang' => $value->kode_barang,
'nama_barang' => $value->nama_barang,
'kategori_id' => $value->kategori_id,
'jumlah_barang' => $value->jumlah_barang,
'harga_satuan' => $value->harga_satuan,
'tanggal_inputan' => $value->tanggal_inputan,
'deskripsi' => $value->deskripsi,
'status' => $value->status,
];
}
if(!empty($arr)){
Item::insert($arr);
}
}
return back()->with('success', 'Insert Record successfully.');
}
И я просто добавляю это в мой просмотр:
<form action="{{ route('barang') }}" class="form-horizontal" method="post"
enctype="multipart/form-data">
@csrf
@if ($errors->any())
<div class="alert alert-danger">
<a href="#" class="close" data-dismiss="alert"
aria-label="close">×</a>
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
@if (Session::has('success'))
<div class="alert alert-success">
<a href="#" class="close" data-dismiss="alert"
aria-label="close">×</a>
<p>{{ Session::get('success') }}</p>
</div>
@endif
<input type="file" name="import_file" />
<button class="btn btn-primary">Import File</button>
</form>
Данные в результате показа результатов успешно вставлены, но в мою таблицу не вставлено никаких данных.
Вот мое превосходствоФормат CSV:
R4B6, MONITOR LENOVO, ELEKTRONIK, 1, -, 10/4/2018, -, Aktif
Итак, как сделать код правильным длявставить в БД?