Courses

React.js + Inertia in Laravel 11: From Scratch

Form Validation and Multi-Submit Prevention

Summary of this lesson:
- Implement server-side form validation
- Display validation errors in React
- Prevent multiple form submissions
- Disable submit button during processing
- Enhance form user experience

Our form doesn't have validation, so let's add it in this lesson.


Back-End Validation

First, let's add the validation on the back-end. For this, we will use Form Request.

php artisan make:request StorePostRequest

app/Http/Requests/StorePostRequest.php:

class StorePostRequest extends FormRequest
{
public function authorize(): bool
{
return true;
}
 
public function rules(): array
{
return [
'title' => 'required|min:3',
'content' => 'required',
];
}
}

app/Http/Controllers/PostController.php:

use App\Http\Requests\StorePostRequest;
 
class PostController extends Controller
{
// ...
 
public function store(Request $request): RedirectResponse
public function store(StorePostRequest $request): RedirectResponse
{
Post::create([
'title' => $request->input('title'),
'content' => $request->input('content'),
]);
Post::create($request->validated());
 
return redirect()->route('posts.index');
}
}

We don't need anything else on the back-end.


Showing Errors on the Front-End

For the front-end, there are a couple of...

The full lesson is only for Premium Members.
Want to access all 18 lessons of this course? (57 min read)

You also get:

  • 69 courses (majority in latest Laravel 11)
  • Premium tutorials
  • Access to repositories
  • Private Discord