Laravel - Dosya Yükleme
Laravel'de Dosya Yüklemek çok kolaydır. Tek yapmamız gereken, bir kullanıcının yüklenecek bir dosyayı seçebileceği ve yüklenen dosyaların işleneceği bir kontrolörün bulunduğu bir görünüm dosyası oluşturmaktır.
Bir görünüm dosyasında, aşağıdaki kod satırını ekleyerek bir dosya girişi oluşturmamız gerekir.
Form::file('file_name');
Form :: open () 'da eklememiz gerekiyor ‘files’=>’true’Aşağıda gösterildiği gibi. Bu, formun birden çok bölüm halinde yüklenmesini kolaylaştırır.
Form::open(array('url' => '/uploadfile','files'=>'true'));
Misal
Step 1 - adlı bir görünüm dosyası oluşturun resources/views/uploadfile.php ve aşağıdaki kodu o dosyaya kopyalayın.
resources/views/uploadfile.php
<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>
Step 2 - adlı bir denetleyici oluşturun UploadFileController aşağıdaki komutu yürüterek.
php artisan make:controller UploadFileController --plain
Step 3 - Başarılı bir yürütmeden sonra, aşağıdaki çıktıyı alacaksınız -
Step 4 - Aşağıdaki kodu kopyalayın
app/Http/Controllers/UploadFileController.php dosya.
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());
}
}
Step 5 - Aşağıdaki satırları ekleyin app/Http/routes.php.
app/Http/routes.php
Route::get('/uploadfile','UploadFileController@index');
Route::post('/uploadfile','UploadFileController@showUploadFile');
Step 6 - Yükleme dosyası işlevini test etmek için aşağıdaki URL'yi ziyaret edin.
http://localhost:8000/uploadfile
Step 7 - Aşağıdaki resimde gösterildiği gibi bir uyarı alacaksınız.