Laravel 5 为什么可以';t如果部件未在laravel 5控制器方法中执行?

Laravel 5 为什么可以';t如果部件未在laravel 5控制器方法中执行?,laravel-5,Laravel 5,以上是控制器方法。其他主要部分执行正确。但我想,如果主要部分没有执行的话。在主if条件下,如果下拉框值等于该值,我希望保持在同一页上。有谁能弄明白这一团糟吗?我想这就是你该做的: public function index1() { // $g = Request::input('grade'); //$s = Request::input('subject'); $g=$_POST['grade']; $s=$_POST['subject'];

以上是控制器方法。其他主要部分执行正确。但我想,如果主要部分没有执行的话。在主if条件下,如果下拉框值等于该值,我希望保持在同一页上。有谁能弄明白这一团糟吗?

我想这就是你该做的:

public function index1()
{

   // $g = Request::input('grade');
    //$s = Request::input('subject');
        $g=$_POST['grade'];
        $s=$_POST['subject'];



if(strcmp($g,'Select A Grade')==0 || strcmp($s,'Select A Subject')==0){

    if(strcmp($s,'Select A Subject')!=0){
   // Session::flash('msg', 'Please select the Subject.');
     return redirect()->back()->withInput();

    }
    else if(strcmp($g,'Select A Grade')!=0){
    // Session::flash('msg', 'Please select the Grade.');
     return redirect()->back()->withInput();

    }


}

else{

        $u = DB::table('upldtbls')->where('grade',$g)->where('subject',$s)->get();


        return view('2Eng',compact('u'));
}

}
附言。 不要使用$\u POST,请使用以下命令:

为了便于验证,其使用更方便:

我已经更新了答案。但我还是遇到了同样的问题。保持原样,只需将“==0”改为“=0'我已再次更新。同样的问题也会出现。实际上,我需要做这个==0。
    if(strcmp($s,'Select A Subject') !== 0 ){
   // Session::flash('msg', 'Please select the Subject.');
     return redirect()->back()->withInput();

    }
    else if(strcmp($g,'Select A Grade') !== 0 ){
    // Session::flash('msg', 'Please select the Grade.');
     return redirect()->back()->withInput();

    }