Pass variable from blade to controller Laravel
Pass variable from blade to controller Laravel
We will use programming in this lesson to attempt to solve the "Pass variable from blade to controller Laravel".
You can pass variable as arguments to controller's method from blade view file. You have to create the method in controller class as a static method and you can directly call the controller's method by specifying the full path of controller in view file. You can also pass data from view to controller using anchor tag with route method and get in controller's method.-
Get user details by calling controller's method from view in Laravel
//resources\views\home.blade.php @php echo App\Http\Controllers\HomeController::getUserByID(1); @endphp //app\Http\Controllers\HomeController.php //Create controller (HomeController) if not already created using php artisan make:controller HomeController and use below function in it. public static function getUserByID($id){ $user = User::findOrFail($id); return $user; }
Output:
{"id":1,"name":"john","email":"john@example.com","email_verified_at":"2021-08-02T00:38:40.000000Z",
"created_at":"2021-08-02T00:38:40.000000Z","updated_at":"2021-08-02T00:38:40.000000Z"}This code snippet helps you to call the controller's method from view file. You have to create a web route, a function with static method in controller and you can call this method from view file by specifying the full path of controller class by passing argument to controller's method.
-
Passing variable data from view to controller using anchor tag in Laravel
//routes\web.php use App\Http\Controllers\HomeController; Route::get('user/{id}/{name}', [HomeController::class, 'getUserDetail'])->name('user.detail'); //app\Http\Controllers\HomeController.php <p>Create controller (HomeController) if not already created using <strong>php artisan make:controller HomeController </strong>and use below function in it.</p> public function getUserDetail($id, $name){ echo 'User ID = '. $id. "<br />"; echo 'User Name = '. $name; } //resources\views\home.blade.php @php $userID = 1; $name = 'summer'; @endphp <a href="{{ route('user.detail', ['id'=>$userID, 'name'=>$name]) }}"> Get user Deatails </a>
Output:
User ID = 1
User Name = summerThis code snippet helps you pass the variable data using route method in anchor tag and we can get it in controller's method as parameters value. Here we have use static data and pass data to route as arguments and get the variable data in controller file. You can also pass dynamic value to route method in anchor tag in laravel.
-
Pass variable class from child view to layout
//Extending sidebar layout in child view and passing the variable name to the layout. //resources\views\article.blade.php @extends('layouts.sidebar', ['body_class' => 'article']) //Display variable name to body class in layout. //resources\views\layouts\sidebar.blade.php <body class="{{ $body_class ?? ''}}"> //Or <body class="{{ !empty($body_class) ? $body_class : '' }}">
You can pass variable class name from the child view (article.blade.php) to the sidebar layout and after that, you can display class to your body in the laravel layout file (sidebar.blade.php) which you are extending in the child view file.
-
Pass javascript variable value to laravel route on ajax call
<script> var id = $('#recordID').val(); var url = '{{ route("deleteRecord", ":id") }}'; url = url.replace(':id', id); //Call ajax $.ajax({ type : "POST", url : url, success:function(response){ console.log(response); } }); </script> <!-- Laravel route definition and generated URL --> Route::post('/delete-record/{id}', [RecordController::class, 'delete'])->name('deleteRecord'); <!-- #Generated URL --> http://localhost:8000/delete-record/1
You can pass javascript value to laravel route using replace method on url variable and assign to url parameter of ajax method.
-
Validate variable if value of variable is null, empty and has blank spaces in javascript
<script> function isNullEmptyBlank(str){ return str === null || str.match(/^ *$/) !== null; } var addr = ''; if(isNullEmptyBlank(addr)){ console.log('The value of variable is null, empty or has blank spaces'); } </script>
Output:
The value of variable is null, empty or has blank spaces
This code snippet will validate input variable if value of variable is null (null), empty ('') and has blank spaces(' ').
-
Passing variable data from view to controller using anchor tag in Laravel
//routes\web.php use App\Http\Controllers\HomeController; Route::get('user/{id}/{name}', [HomeController::class, 'getUserDetail'])->name('user.detail'); //app\Http\Controllers\HomeController.php <p>Create controller (HomeController) if not already created using <strong>php artisan make:controller HomeController </strong>and use below function in it.</p> public function getUserDetail($id, $name){ echo 'User ID = '. $id. "<br />"; echo 'User Name = '. $name; } //resources\views\home.blade.php @php $userID = 1; $name = 'summer'; @endphp <a href="{{ route('user.detail', ['id'=>$userID, 'name'=>$name]) }}"> Get user Deatails </a>
Output:
User ID = 1
User Name = summerThis code snippet helps you pass the variable data using route method in anchor tag and we can get it in controller's method as parameters value. Here we have use static data and pass data to route as arguments and get the variable data in controller file. You can also pass dynamic value to route method in anchor tag in laravel.
-
Pass variable (id) to another page as route parameter via controller in Laravel
//resources\views\welcome.blade.php @php $ID = 1; @endphp <a href="{{ route('id.detail', ['id'=>$ID]) }}"> Get id value in another view </a> //routes\web.php Route::get('get-id/{id}', [HomeController::class, 'getUserDetail'])->name('id.detail'); //app\Http\Controllers\HomeController.php public function getUserDetail($id){ return view('home')->with(['id'=> $id]); } //resources\views\home.blade.php <!doctype html> <html lang="en"> <head> <!-- Required meta tags --> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <!-- Bootstrap CSS --> <script src="https://code.jquery.com/jquery-3.6.0.min.js" integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4=" crossorigin="anonymous"></script> <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-BmbxuPwQa2lc/FVzBcNJ7UAyJxM6wuqIj61tLrc4wSX0szH/Ev+nYRRuWlolflfl" crossorigin="anonymous"> <title>Home page !</title> </head> <body> <h1> {{ $id }} </h1> </body> </html>
Generated URL:
http://localhost:8000/get-id/1
Output:
1
-
Define variable and use in controller's method
Create a private variable and get the value of api key from .env file using
$_ENV['APP_API_KEY']
and pass the value to variable.app\Http\Controllers<SomeController>.php
class SomeController extends Controller{ private $apiKey; public function __construct() { $this->apiKey = $_ENV['APP_API_KEY']; } public function index() { $apikeyval = $this->apiKey; }
.env
APP_API_KEY = "5d1c88f1-bd63-428c-acce-eae8d1713445"
-
How to initialize variable in javascript to avoid errors?
Use Linter Setting that Automatically Initializes All Variables. We can use a linter to check that all variables are initialized. This makes the process automatic so that we can avoid errors.
-
Can I declare a variable without initializing JavaScript?
We can use the let keyword. We use the let keyword when variables are mutable. That means we can change or set the value later on in the program. When the value of the variable will never change, when it stays constant, we use the keyword const.
-
How to pass variable in HREF in Laravel code example?
{{ url('projects/display/'.$projects->id) }}
-
How to pass two variable in HREF in Laravel?
- Define route with multiple parameters.
- Define Controller Method With Multiple Parameters.
- Define Named Route With Multiple Parameters.
If you like what you are reading, please consider buying us a coffee ( or 2 ) as a token of appreciation.
Don't forget to share this article! Help us spread the word by clicking the share button below.
We appreciate your support and are committed to providing you valuable and informative content.
We are thankful for your never ending support.
Random Code Snippet Queries: Laravel
- Class App\Http\Controllers\Admin\UserController Does Not Exist
- How to get the random value form a specific column in laravel ?
- How to insert value to additional columns in pivot table in laravel
- The use statement with non-compound name 'Auth' has no effect
- Get domain name in laravel
- Always load the relationship data with eager loading in Laravel
- How to pass query string to url in laravel
- Send OTP using textlocal api in laravel
- Laravel upload file with original file name
- Create records using relationship in laravel
- Get last week data in Laravel
- Route [password.request] not defined
- How to display user profile after login in laravel
- Target class [admin] does not exist.
- Get current month records in laravel 7/8
- How to add columns in existing table using migration in laravel
- Link storage folder in laravel 8
- Laravel migration add foreign key to existing table
- How to check relationship is loaded or not in Laravel
- Get last record from table in laravel
- Include External CSS and JS file in Laravel
- How to send ID to another page in Laravel
- Return view from route Laravel
- How to authenticate admin users in Laravel ?
- Database transactions in laravel