web-dev-qa-db-ja.com

Laravelで動画をアップロードする方法

Laravelを使用しながら動画をアップロードしようとしています。コントローラのラインを変更すると、画像のアップロードはうまくいきますが

echo '$file' . $file->getClientOriginalName() . '"/>';

に:

echo '<file src="uploads/' . $file->getClientOriginalName() . '"/>';

新しいページにuploadedと書かれているだけですが、ビデオはありません。

コントローラ:

<?php
namespace App\Http\Controllers;

use Illuminate\Support\Facades\Request;


class UploadController extends Controller
{

    public function upload(Request $request)
    {

        if(Request::hasFile('file')){

            echo 'Uploaded';
            $file = Request::file('file');
            $file->move('uploads', $file->getClientOriginalName());
            echo '$file' . $file->getClientOriginalName() . '"/>';
        }

    }
}

ルート:

Route::get('/', function () {
    return view('welcome');
});

Route::post('upload', 'UploadController@upload');

見る:

<html>
    <head>
        <title>Laravel</title>

        <link href='//fonts.googleapis.com/css?family=Lato:100' rel='stylesheet' type='text/css'>

    </head>
    <body>
        <div class="container">
            <div class="content">

                <h1>File Upload</h1>
                <form action="{{ URL::to('upload') }}" method="post" enctype="multipart/form-data">
                    <label>Select image to upload:</label>
                    <input type="file" name="file" id="file">
                    <input type="submit" value="Upload" name="submit">
                    <input type="hidden" value="{{ csrf_token() }}" name="_token">
                </form>

            </div>
        </div>
    </body>
</html>
4
Vish_TS

あなたはこのように試すことができます:

コントローラー:

use Illuminate\Support\Facades\Request;


class UploadController extends Controller
{

    public function upload(Request $request)
    {

        if(Request::hasFile('file')){

            $file = Request::file('file');
            $filename = $file->getClientOriginalName();
            $path = public_path().'/uploads/';
            return $file->move($path, $filename);
        }

    }
}

php.iniファイルには、これに影響する可能性のあるいくつかの制限が含まれています。これらを十分に高い値に変更してみてください。

upload_max_filesize = 10M
post_max_size = 10M
memory_limit = 32M
5
Minhaj Mimo
 public function upload_video(Request $request){ 
             $data=$request->all();
              $rules=[
                'video'          =>'mimes:mpeg,ogg,mp4,webm,3gp,mov,flv,avi,wmv,ts|max:100040|required'];
             $validator = Validator($data,$rules);

             if ($validator->fails()){
                 return redirect()
                             ->back()
                             ->withErrors($validator)
                             ->withInput();
             }else{
                        $video=$data['video'];
                        $input = time().$video->getClientOriginalExtension();
                        $destinationPath = 'uploads/videos';
                        $video->move($destinationPath, $input);

                            $user['video']       =$input;
                            $user['created_at']  =date('Y-m-d h:i:s');
                            $user['updated_at']  =date('Y-m-d h:i:s');
                            $user['user_id']     =session('user_id');
                            DB::table('user_videos')->insert($user);
                            return redirect()->back()->with('upload_success','upload_success');
                    }
}
1
Ahmed Mahmoud