Reputation: 3833
I need to pass information between pages.
I would usually just use sessions in plain PHP. I wonder if there is a more correct way to do this on Laravel.
<?php
session_start();
$_SESSION["ID"] = 'item_id';
?>
<?php
session_start();
echo $_SESSION['ID'];
#"item_id"
?>
How is this supposed to be done in Laravel?
Upvotes: 4
Views: 2510
Reputation: 4610
If you want to use session then you need to do 2 things.
In your controller you can use something like
session()->put('your_session_variable','some value');
In your view then you can display that session variable
@if(session()->has('your_session_variable'))
{{Session::get('your_session_varible',"session_not_set(default value)") }}
@endif
Its good to use default value for displaying session variables (many times that session variable is not set).
Upvotes: 1
Reputation: 953
Just use Session.
Session::flash(); //or Session::put
Session::flash('values', $passvalues);
Redirect::to('/add1');
$oldinput = Session::get('values');
Upvotes: 3
Reputation: 2179
In laravel you can pass a variable in your url i.e. :
In routes.php
Route::get('/page1', 'YourController@Yourfunction');
Route::get('/page2/{id}', 'YourController@loadpage2');
In your controller.php
public function Yourfunction(){
return view('page1');
}
public function loadpage2(id){
return view('page2', compact('id'));
}
in your view have a link to url /page2/3
where 3 is your id
Upvotes: 2