How to use variables in routes in laravel?

10,383

When you're using redirect()->with(), you're saving data to the session. So to get data from the session in controller or even view you can use session() helper:

$member = session('member'); // In controller.

{{ session('member')['xyz'] }} // In view.

Alternatively, you could pass variables as string parameters.

Redirect:

return redirect('member/memberinfo/xyz/abc')

Route:

Route::get('/member/memberinfo/{xyz}/{abc}', 'MemberController@memberinfo');

Controller:

public function memberinfo($xyz, $abc)
{
    return view('member.memberinfo', compact('xyz', 'abc'));
}
Share:
10,383
Nitish Kumar
Author by

Nitish Kumar

Beginner to the code world. Curios to know lot more things

Updated on June 07, 2022

Comments

  • Nitish Kumar
    Nitish Kumar almost 2 years

    I'm trying to build a application in laravel 5.3 in which I get the variable from request method and then trying to pass that variable in a redirect to the routes. I want to use this variable in my view so that I can be able to display the value of variable. I'm currently doing this:

    In my controller I'm getting the request like this:

    public function register(Request $request)
    {
        $data = request->only('xyz','abc');
        // Do some coding
        .
        .
        $member['xyz'] = $data['xyz'];
        $member['abc'] = $data['abc'];
        return redirect('member/memberinfo')->with('member' => $member);
    }
    

    Now I've following in my routes:

    Route::get('/member/memberinfo', 'MemberController@memberinfo')->with('member', $member);
    

    Now in MemberController I want to use $member variable and display this into my view:

    public function memberinfo()
    {
      return view('member.memberinfo', ['member' => $member]);
    }
    

    But I'm getting an error in the routes files

    Call to undefined method Illuminate\Routing\Route::with()

    Help me out, how can I achieve this.

  • Nitish Kumar
    Nitish Kumar over 7 years
    Thanks for constantly answering my questions. It helped me lot in learning laravel!
  • parker_codes
    parker_codes about 6 years
    For anyone else viewing this, keep in mind that you can use Route Model Binding: laravel.com/docs/5.6/routing#route-model-binding