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

Blade Template Tutorial Three Template Inheritance in Laravel 11