在视图页面中显示视频



我正在处理一个简单的基本crud,我正在用视频存储我的注册用户。我使用的文件类型是本地的,注册进行得很好。但我似乎无法在我的查看页面上显示和播放我的视频。

这是我的注册功能


public function store(Request $request)
{

$validator = Validator::make($request->all(),[
'name'                  => 'required|string', 'max:255', 
'email'                 => 'required|string',
'password'              => 'required', 'confirmed', RulesPassword::defaults(),
'phone'                 => 'required|string', 
'insta'                 => 'required|string',
'video'                 => 'required', 
]);
if ($validator->fails()) {
return response()->json([ 'message' => $validator->errors() ]);
}
try{
if ($request->hasFile('video')) {
$sub = str_replace('" "', '_',$request->company);
$path = Storage::disk('local')
->putFileAs("user/video-{$sub}",$request->video,$request->video->getClientOriginalName());
} 

$user = User::create([
'name'                  => $request->name, 
'email'                 => $request->email, 
'password'              => Hash::make($request->password),
'phone'                 => $request->phone, 
'insta'                 => $request->insta,
'video'                 => $path,
]);

event(new Registered($user));

Auth::login($user);

return redirect(RouteServiceProvider::HOME)->with('success','Registerd succesfully!');
}
catch (Exception $e){
$payload=[
'status'=>'fail',
'details'=>$e->getMessage()
];
return response()->json(['message' => $payload]);
}




}

这是我的表演功能

public function show($user)
{
$user = User::findorfail($user);
return view('Pages.Admin.Candidate.show',['user' => $user]);
}

这是我的观点

<div class="col-sm-12 col-md-5 col-lg-4">
<div class="card">
{{-- <video controls="" src=" {{ url('storage/'.$user->video) }}" class="bs-card-video"></video> --}}
<video width="auto" height="auto" controls>   
<source src=" {{ url('storage/'.$user->video) }}" type="video/mp4">   
<source src=" {{ url('storage/'.$user->video) }}" type="video/ogg">   
Your browser does not support the video tag. 
</video> 

</div>
</div>

但它仍然没有显示视频。

您的控制器

public function store(Request $request)
{
$user = new User;
$user->name = $request->name;
$user->phone = $request->phone;
$user->insta = $request->insta;
$user->email = $request->email;
if ($request->hasFile('video')) {
$file = $request->file('video');
$extension = $file->getClientOriginalExtension();
$filename = time() . '.' . $extension;
$file->move('user/videos/', $filename);
$user->video = $filename;
}
$user->password = Hash::make($request->input('password'));
$user->save();
return redirect('/login');
}

您的路线

Route::post('/user/store', 'UserController@store');

您的创建视图

<form method="POST" action="/user/store" enctype="multipart/form-data">
@csrf
<input type="text" name="name" required><br>
<input type="email" name="email" required><br>
<input type="text" name="phone" required><br>
<input type="text" name="insta" required><br>
<input type="password" name="password" required><br>
<input type="file" name="video" required><br> 
<button type="submit">Submit Form</button>
</form>

您的查找视图

<div class="col-sm-12 col-md-5 col-lg-4">
<div class="card">
<video width="auto" height="auto" controls>   
<source src=" {{ asset('user/videos/' .$user->video) }}" type="video/mp4">   
<source src=" {{ asset('user/videos/' .$user->video) }}" type="video/ogg">   
Your browser does not support the video tag. 
</video> 

</div>
</div>

祝你好运,它应该工作

最新更新