Laravel – File Uploading

0
6

File Uploading trong Laravel rất dễ dàng. Tất cả những gì chúng ta cần làm là tạo một tệp dạng xem nơi người dùng có thể chọn tệp để tải lên và bộ điều khiển nơi các tệp đã tải lên sẽ được xử lý.

Trong tệp dạng xem, chúng ta cần tạo đầu vào tệp bằng cách thêm dòng mã sau.

Form::file('file_name');

Trong Form :: open (), chúng ta cần thêm ‘files’ => ’true’ như hình bên dưới. Điều này tạo điều kiện cho biểu mẫu được tải lên thành nhiều phần.

Form::open(array('url' => '/uploadfile','files'=>'true'));

Vi du

Bước 1 – Tạo một tệp xem có tên là resource / views / uploadfile.php và sao chép đoạn mã sau vào tệp đó.

<html>
   <body>
      <?php
         echo Form::open(array('url' => '/uploadfile','files'=>'true'));
         echo 'Select the file to upload.';
         echo Form::file('image');
         echo Form::submit('Upload File');
         echo Form::close();
      ?>
   </body>
</html>

Bước 2 – Tạo một Controller có tên UploadFileController bằng cách thực hiện lệnh sau.

php artisan make:controller UploadFileController --plain

Bước 3 – Sao chép mã sau vào tệp app / Http / Controllers / UploadFileController.php.

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;

class UploadFileController extends Controller {
   public function index() {
      return view('uploadfile');
   }
   public function showUploadFile(Request $request) {
      $file = $request->file('image');
   
      //Display File Name
      echo 'File Name: '.$file->getClientOriginalName();
      echo '<br>';
   
      //Display File Extension
      echo 'File Extension: '.$file->getClientOriginalExtension();
      echo '<br>';
   
      //Display File Real Path
      echo 'File Real Path: '.$file->getRealPath();
      echo '<br>';
   
      //Display File Size
      echo 'File Size: '.$file->getSize();
      echo '<br>';
   
      //Display File Mime Type
      echo 'File Mime Type: '.$file->getMimeType();
   
      //Move Uploaded File
      $destinationPath = 'uploads';
      $file->move($destinationPath,$file->getClientOriginalName());
   }
}

Bước 4 – Thêm các dòng sau vào app / Http / route.php.

Route::get('/uploadfile',[UploadFileController::class,'index']);
Route::post('/uploadfile',[UploadFileController::class,'showUploadFile']);

Bước 5 – Truy cập URL sau để kiểm tra chức năng của tệp tải lên.

http://localhost:8000/uploadfile

BÌNH LUẬN

Vui lòng nhập bình luận của bạn
Vui lòng nhập tên của bạn ở đây