2017-12-27 342 views
2

我想将AddressController.php中的$ valPrev传递给FrontController.php。我正在使用函数来传递变量。将值从一个控制器传递到另一个控制器

前Controller.php这样

public function index2($valPrev){ 
      $shop=Products::all(); 
      $valPre = Input::get('valPrev'); 


    dd($valPrev); 
      $garma = Products::where('season','=','Summer')->take(4)->get(); 
      $sarma = Products::where('season','=','Winter')->take(4)->get(); 
      $khizan = Products::where('season','=','Autumn')->take(4)->get(); 
      $bahar = Products::where('season','=','Spring')->take(4)->get(); 
      $review = Review::orderby('id','desc')->take(2)->get(); 

      return view('front.index',compact('shop','garma','sarma','khizan','bahar','review')); 
     } 

AddressController.php

public function store(Request $request) 
{ 
    $this->validate($request,[ 
     'fname'=>'required', 
     'lname'=>'required', 
     'Ttl'=>'required', 
     'email'=>'required|email', 
     'addressline'=>'required', 
     'city'=>'required', 
     'pro'=>'required', 
     'phone'=>'required |regex:/^[0-9\-\+]{9,15}$/', 

    ]); 
    Address::create($request->all()); 
    $pro=$request->Ttl; 

    $proo=$request->pro; 

    return redirect('/')->with('valPrev',1); 
} 
+0

如果是两个不同的请求,请将其存储在会话中。 – aynber

+0

不与()函数作为会话使用 – Faiez

+0

不,'with()'将变量传递给视图。它不会将它存储在会话中。 – aynber

回答

2

重定向时,with()方法会将数据闪烁到会话中。

使用session()帮手来获取数据:

$valPrev = session('valPrev') 

或者Session::get()

$valPrev = \Session::get('valPrev'); 
+1

谢谢,帮助了很多 – Faiez

0

有两种方法在其中您可以将数据传递到另一个控制器。

1 ..通过重新

2 ..与会话。

我假设你已经在你的应用程序命名的路线,你可以使用route('name', $param)

其次,您可以通过将数据保存到会话实现这一目标。 Laravel提供了一个非常好的帮手来实现这一点,您可以简单地节省会话的费用session()->set('key','value')

希望这会有所帮助。

相关问题