Laravel Excel Import Maatwebsite

2019-08-05 07:10发布

I found the code form this website http://itsolutionstuff.com/post/laravel-56-import-export-to-excel-and-csv-exampleexample.html

This is my route after editing:

Route::post('barang', 'BarangController@importExcel')->name('barang');

This is their Controller, and I just Adding on 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.');
    }

And I Just Adding this on my View :

<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>

The result show data has insert successfully, but nothing data has insert to my table.

Here my excel CSV format :

R4B6,MONITOR LENOVO,ELEKTRONIK,1,-,10/4/2018,-,Aktif

So, how to make the code right for insert into DB ?

0条回答
登录 后发表回答