Mengupload File
Pendahuluan
Mengupload file adalah salah satu fitur yang sering dibutuhkan dalam aplikasi web. Dalam tutorial ini, kita akan membahas cara mengupload file menggunakan framework Laravel.
Prerequisites
Pastikan Anda telah menginstal:
- PHP (versi 7.3 atau lebih tinggi)
- Composer
- Laravel
Langkah 1: Membuat Proyek Laravel Baru
Jika Anda belum memiliki proyek Laravel, Anda dapat membuatnya dengan perintah berikut:
composer create-project --prefer-dist laravel/laravel project-nameGantilah project-name dengan nama proyek yang Anda inginkan.
Langkah 2: Membuat Formulir Upload
Buka file resources/views/welcome.blade.php dan ubah isinya menjadi:
<!DOCTYPE html>
<html>
<head>
<title>Upload File di Laravel</title>
</head>
<body>
<h1>Upload File</h1>
<form action="{{ route('file.upload') }}" method="POST" enctype="multipart/form-data">
@csrf
<input type="file" name="file" required>
<button type="submit">Upload</button>
</form>
</body>
</html>Langkah 3: Mengatur Router
Buka file routes/web.php dan tambahkan rute berikut:
use App\Http\Controllers\FileUploadController;
Route::get('/', function () {
return view('welcome');
});
Route::post('/upload', [FileUploadController::class, 'upload'])->name('file.upload');Langkah 4: Membuat Controller
Buat controller baru dengan perintah berikut:
php artisan make:controller FileUploadControllerKemudian, buka file yang baru saja dibuat di app/Http/Controllers/FileUploadController.php dan tambahkan kode berikut:
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Storage;
class FileUploadController extends Controller
{
public function upload(Request $request)
{
$request->validate([
'file' => 'required|file|max:2048', // Maksimal 2MB
]);
// Mengupload file
$path = $request->file('file')->store('uploads');
return back()->with('success', 'File berhasil diupload: ' . $path);
}
}Langkah 5: Menampilkan Pesan Sukses
Kembali ke file resources/views/welcome.blade.php dan tambahkan kode untuk menampilkan pesan sukses:
@if(session('success'))
<div>
{{ session('success') }}
</div>
@endifLangkah 6: Mengonfigurasi Sistem Penyimpanan
Pastikan bahwa direktori penyimpanan (storage) dapat diakses dengan perintah:
php artisan storage:linkLangkah 7: Menguji Upload
Jalankan server menggunakan perintah:
php artisan serveBuka browser dan navigasikan ke http://localhost:8000. Anda akan melihat formulir untuk mengupload file. Pilih file dan klik tombol "Upload".
Kesimpulan
Anda telah berhasil membuat fitur upload file pada aplikasi Laravel. Anda dapat memperluas tutorial ini dengan menambahkan validasi lebih lanjut, mengelola file yang diupload, atau menyimpan informasi file ke database.
Sampai jumpa di tutorial selanjutnya!