Form Validation tutorial in Laravel 11

 <!DOCTYPE html>

<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Add User Data</title>
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-QWTKZyjpPEjISv5WaRU9OFeRpok6YctnYmDr5pNlyT2bRjXh0JMhjY6hW+ALEwIH" crossorigin="anonymous">
</head>
<body>
    <div class="container">
        <div class="row">
            <div class="col-4">
                <h1>Add New User</h1>

                @if($errors->any())
                <ul class="alert alert-danger">
                    @foreach($errors->all() as $error)
                        <li>{{ $error }}</li>
                    @endforeach
                </ul>
                @endif
                <form action="{{ route('addUser') }}" method="POST">
                    @csrf
                    <div class="mb-3">
                        <label class="form-label">Name</label>
                        <input type="text" value="{{ old('username') }}" class="form-control @error('username') is-invalid @enderror" name="username">
                        <span class="text-danger">
                            @error("username")
                                {{ $message }}
                            @enderror
                        </span>
                    </div>
                    <div class="mb-3">
                        <label class="form-label">Email</label>
                        <input type="email" value="{{ old('useremail') }}" class="form-control @error('useremail') is-invalid @enderror" name="useremail">
                        <span class="text-danger">
                            @error("useremail")
                                {{ $message }}
                            @enderror
                        </span>
                    </div>
                    <div class="mb-3">
                        <label class="form-label">Password</label>
                        <input type="password" value="{{ old('userpassword') }}" class="form-control @error('userpassword') is-invalid @enderror" name="userpassword">
                        <span class="text-danger">
                            @error("userpassword")
                                {{ $message }}
                            @enderror
                        </span>
                    </div>
                    <div class="mb-3">
                        <label class="form-label">Age</label>
                        <input type="text" value="{{ old('userage') }}" class="form-control @error('userage') is-invalid @enderror" name="userage">
                        <span class="text-danger">
                            @error("userage")
                                {{ $message }}
                            @enderror
                        </span>
                    </div>
                    <div class="mb-3">
                        <label class="form-label">City</label>
                        <select class="form-control" name="usercity">
                            <option value="delhi">Delhi</option>
                            <option value="mumbai">Mumbai</option>
                            <option value="goa">Goa</option>
                            <option value="pune">Pune</option>
                        </select>
                        <span class="text-danger">
                            @error("usercity")
                                {{ $message }}
                            @enderror
                        </span>
                    </div>
                    <button type="submit" class="btn btn-primary">Submit</button>
                </form>
            </div>
        </div>
    </div>
</body>
</html>
Above File is resources\views\adduser.blade.php File





Below File is app\Http\Controllers\UserController.php File
<?php

namespace App\Http\Controllers;

use App\Http\Requests\UserRequest;
use Illuminate\Http\Request;

class UserController extends Controller
{
    // public function addUser(UserRequest $request)
    // {
    //     return $request->all();
    // }



    public function addUser(Request $request)
    {
        // dd($request->all());
        $request->validate([
            "username" => "required",
            "useremail" => "required|email",
            "userpassword" => "required|alpha_num|min:5",
            "userage" => "required|numeric|between:18,100",
            "usercity" => "required"
        ], [
            "username.required" => "Username field is required!",
            "useremail.required" => "Useremail field is required!",
            "useremail.email" => "Please Enter the correct Email Address!",
            "userpassword.required" => "User Password field is required!",
            "userpassword.alpha_num" => "User Password must be Alpha Numeric!",
            "userpassword.min" => "User Password length should not less than 5",
            "userage.required" => "User Age field is required!",
            "userage.numeric" => "User Age must be Numeric!",
            "userage.between" => "User Age must be between 18 to 100!",
            "usercity.required" => "User City field is required!"
        ]);
        return $request->all();
    }
}






Below File is routes\web.php File
<?php

use App\Http\Controllers\UserController;
use Illuminate\Support\Facades\Route;

Route::get('/', function () {
    return view('welcome');
});

Route::get("/form", function() {
    return view("adduser");
});
Route::post("/add", [UserController::class, "addUser"])->name("addUser");




Comments

Popular posts from this blog

Eloquent Many to Many Relationship Tutorial in Laravel 11

Eloquent with JSON Data Columns Tutorial in Laravel 11

Blade Template Tutorial Three Template Inheritance in Laravel 11