2016-07-27 24 views
0

如果我想發佈視頻網址,那麼應該寫什麼控制器代碼...請給我任何暗示.. 這裏是我的控制器,我發佈圖像狀態我想在laravel 5.2中共享youtube鏈接

我的控制器:

public function getclass(Request $request) 
{ 
    if(Input::has('post_comment')) 
    { 
     $status=Input::get('post_comment'); 
     $commentBox=Input::get('comment_text'); 
     $selectedStatus=Status::find($status); 

     $selectedStatus->comments()->create([ 
      'comment_text'=>$commentBox, 
      'user_id'=>Auth::user()->id, 
      'status_id'=>$status 

      ]); 
     Flash::message('Your comments has been posted'); 
     return redirect(route('class')); 
    } 

    if(Input::has('status-text')) 
    { 
     $text=e(Input::get('status-text')); 
     $rules = [ 
      'status_text'=>'required|string', 
     ]; 
     $validator = Validator::make($request->all(), $rules); 
     if(Input::hasFile('status_image_upload')) 
     { 
      $rules['status_image_upload'] = 'image'; 
      $validator = Validator::make($request->all(), $rules); 
      if($validator->fails()) 
      { 
       $image = $request->file('status_image_upload'); 

       $imageName = str_random(8).'_'.$image->getClientOriginalName(); 
       //$imageFull = str_random(8).'_'.$image->getClientOriginalExtension(); 

       $image->move('status_images', $imageName); 

       $userStatus = new Status(); 
       $userStatus -> status_text = $text; 
       $userStatus -> image_url = $imageName; 
       $userStatus -> type = 1; 
       $userStatus -> users_id = Auth::user()->id; 
       $userStatus -> save(); 

       Flash::success('Your status has been posted'); 
       return redirect(route('class')); 
      }else{ 
       return back()->with('error','Validation failed:'. $validator->errors); 
      } 
     }else{ 
     if($validator->fails()) 
      { 
       $userStatus = new Status(); 
       $userStatus -> status_text = $text; 
       $userStatus -> users_id = Auth::user()->id; 
       $userStatus -> save(); 

       Flash::success('Your status has been posted'); 
       return redirect(route('class')); 
      }else{ 
       return back()->with('error','Validation failed:'. $validator->errors); 
     } 
    } 
    } 

    return view('class',[ 
     'top_15_posts'=>status::orderBy('id','DESC')->take(15)->get() 
     ]); 
} 

這是我的看法頁面,顯示圖像/狀態

筆者認爲:

<p> {{ $status->status_text }} </p> 
    @if($status->type == 1) 
     <a href="{{ $status->image_url }}"></a> 
     <img src="{{asset('status_images/'.$status->image_url)}}" class="img-responsive" style="width:100%;"> 
    @endif 

這是我的數據庫表 我的數據庫

$t->increments('id')->unique(); 
     $t->longtext('status_text'); 
     $t->integer('users_id')->unsigned(); 
     $t->longtext('image_url'); 
     $t->longtext('video_url'); 
     $t->integer('type'); 
     $t->timestamps(); 
+0

我不明白。 URL來自哪裏?放在哪裏? – manix

回答

0

我固定它。它應該是這樣的:

public function getclass(Request $request) 
{ 
    if (Input::has('post_comment')) 
    { 
     $status=Input::get('post_comment'); 
     $commentBox=Input::get('comment_text'); 
     $selectedStatus=Status::find($status); 

     $selectedStatus->comments()->create([ 
     'comment_text'=>$commentBox, 
     'user_id'=>Auth::user()->id, 
     'status_id'=>$status 
     ]); 
     Flash::message('Your comments has been posted'); 
     return redirect(route('class')); 
    } 
    if(Input::has('status-text')) 
    { 
     $text=e(Input::get('status-text')); 
     $rules = [ 
     'status_text'=>'required|string', 
     ]; 
     $validator = Validator::make($request->all(), $rules); 


     if(Input::hasFile('status_image_upload')) 
     { 
      $rules['status_image_upload'] = 'image'; 
      $validator = Validator::make($request->all(), $rules); 
      if($validator->fails()) 
      { 
       $image = $request->file('status_image_upload'); 
       $imageName = str_random(8).'_'.$image->getClientOriginalName(); 
       $image->move('status_images', $imageName); 
       $userStatus = new Status(); 
       $userStatus -> status_text = $text; 
       $userStatus -> image_url = $imageName; 
       $userStatus -> type = 1; 
       $userStatus -> users_id = Auth::user()->id; 
       $userStatus -> save(); 
       Flash::success('Your status has been posted'); 
       return redirect(route('class')); 
      } 
     } 
     else if ($validator->fails()) 
     { 
      $userStatus = new Status(); 
      $userStatus -> status_text = $text; 
      $userStatus -> video_url = $request['video_url']; 
      $userStatus -> type = 2; 
      $userStatus -> users_id = Auth::user()->id; 
      $userStatus -> save(); 
      Flash::success('Your status has been posted'); 
      return redirect(route('class')); 
     } 
} 


return view('class',[ 
'posts'=>status::orderBy('id','DESC')->get() 
]);}