我想将$ valPrev从AddressController.php传递给FrontController.php。我正在使用函数来传递变量。
Front 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 :(得分:2)
重定向时,with()
方法会将数据闪烁到会话中。
使用session()
帮助程序获取数据:
$valPrev = session('valPrev')
或Session::get()
:
$valPrev = \Session::get('valPrev');
答案 1 :(得分:0)
使用"和#34;重定向。值应该在会话中。尝试使用
session()
点击此处了解更多详情。 https://laravel.com/docs/5.5/redirects#redirecting-with-flashed-session-data
答案 2 :(得分:0)
有两种方法可以将数据传递给另一个控制器。
1 ..通过重定向
2 ..与会话。
我假设您的应用程序中有命名路由,您可以使用route('name', $param)
其次,您可以通过将数据保存到会话中来实现此目的。 Laravel为实现此目的提供了一个非常好的帮助,您可以使用session()->set('key','value')
希望这有帮助。