Postingan lainnya
Cara mengatasi error Call to a member function getClientOriginalName() on null
Hi..
saya sedang membuat aplikasi sederhana untuk eksport import tetapi ketika akan import mengalami erorr Call to a member function getClientOriginalName() on null, mohon bantuannya....
Web.php
Route::post('/importpengurus', 'PengurusController@pengurusimportexcel')->name('importpengurus');
PengurusController
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Models\Pengurus;
use App\Exports\PengurusExport;
use App\Imports\PengurusImports;
use Maatwebsite\Excel\Facades\Excel;
use App\Http\Controllers\Controller;
public function pengurusimportexcel(Request $request){
$file = $request->file('upload_file');
$namaFile = $file->getClientOriginalName();
$file->move('DataEkstra', $namaFile);
Excel::import(new PengurusImport, public_path('/DataEkstra/'.$namaFile));
return redirect('/Pengurus');
}
Pengurus.blade
<div class="modal fade" id="exampleModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">Import Data</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<form action="{{ route('importpengurus')}}" method="post" enctype="multipart/form-data">
<div class="modal-body">
<div classs="form-group">
{{ csrf_field() }}
<input type="file" required="required">
PengurusImport
<?php
namespace App\Imports;
use App\Models\Pengurus;
use Maatwebsite\Excel\Concerns\ToModel;
class PengurusImport implements ToModel
{
/**
* @param array $row
*
* @return \Illuminate\Database\Eloquent\Model|null
*/
public function model(array $row)
{
return new Pengurus([
'nama' => $row[1],
'kelas' => $row[2],
'jabatan' => $row[3],
]);
}
}
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
<button type="submit" class="btn btn-primary">Import</button>
</div>
</div>
</form>
</div>
</div>
1 Jawaban:
<div>Bagian ini :</div><pre><input type="file" required="required"></pre><div>Coba dikasih attribtue "name" -nya seperti ini misalkan :</div><pre><input type="file" name="upload" required="required"></pre><div><br>Kemudian di file Controller-nya bisa kita akses seperti ini :</div><pre>public function pengurusimportexcel(Request $request){
// Mengecek apakah ada input file dengan attribute name "upload" yang dikirim melalui form
if ($request-&gt;hasFile('upload')) {
// Ambil nilai/isi dari file upload tersebut
$file = $request-&gt;file('upload');
....
}
}</pre><div><br>Semoga berhasil.</div>
Tanggapan
udah di tambahin tapi malah error lagi Class 'App\Http\Controllers\PengurusImport' not found
Pastikan sudah diimport namespace class PengurusImport -nya