Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

luk's avatar
Level 1

user registeration is not working

her is alll my code and when i click submit button there is nothing processing or error route

Auth::routes();

Route::get('/home', [App\Http\Controllers\HomeController::class, 'index'])->name('home');
Route::group(['middleware' => ['auth']], function() {
    Route::resource('roles', RoleController::class);
    Route::resource('users', UserController::class);
    Route::resource('products', ProductController::class);
});

controller

<?php

namespace App\Http\Controllers;
    
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use App\Models\User;
use Spatie\Permission\Models\Role;
use DB;
use Hash;
use Illuminate\Support\Arr;
    
class UserController extends Controller
{
   
    public function index(Request $request)
    {
        $data = User::orderBy('id','DESC')->paginate(5);
        return view('users.index',compact('data'));
    }
    

    public function create()
    {
        
        return view('users.create');
    }
    

    public function store(Request $request)
    {
        $this->validate($request, [
            'name' => 'required',
            'email' => 'required|email|unique:users,email',
            'password' => 'required|same:confirm-password',
            
        ]);
        dump($request);
        $input = $request->all();
        $input['password'] = Hash::make($input['password']);
    
        $user = User::create($input);
        return redirect()->route('users.index')
                        ->with('success','User created successfully');
    }
    
    public function show($id)
    {
        $user = User::find($id);
        return view('users.show',compact('user'));
    }
    
    public function edit($id)
    {
        $user = User::find($id);
        $roles = Role::pluck('name','name')->all();
        $userRole = $user->roles->pluck('name','name')->all();
    
        return view('users.edit',compact('user','roles','userRole'));
    }

    public function update(Request $request, $id)
    {
        $this->validate($request, [
            'name' => 'required',
            'email' => 'required|email|unique:users,email,'.$id,
            'password' => 'same:confirm-password',
            'roles' => 'required'
        ]);
    
        $input = $request->all();
        if(!empty($input['password'])){ 
            $input['password'] = Hash::make($input['password']);
        }else{
            $input = Arr::except($input,array('password'));    
        }
    
        $user = User::find($id);
        $user->update($input);
        DB::table('model_has_roles')->where('model_id',$id)->delete();
    
        $user->assignRole($request->input('roles'));
    
        return redirect()->route('users.index')
                        ->with('success','User updated successfully');
    }
    
    public function destroy($id)
    {
        User::find($id)->delete();
        return redirect()->route('users.index')
                        ->with('success','User deleted successfully');
    }
}
 

create.blade.php

@extends('layouts.mainlayout')
@section('content')
<section class="content">
	<div class="body_scroll">
		<div class="block-header">
            <div class="container-fluid">
				<div class="row clearfix">
					<div class="col-lg-12 col-md-12 col-sm-12">
                        <div class="card">
							<div class="body">
                                <h2 class="card-inside-title" >User Registration</h2>
                                <form method="POST" action="{{ route('users.store') }}">
                                     @csrf
       
                                    <div class="form-group">
                                         <label for="name">Name:</label>
			                            <input type="text" class="form-control" placeholder="name" name = "name" />
		                            </div>

                                    <div class="form-group">
                                        <label for="email">Email:</label>
                                        <input type="email" class="form-control" id="email" placeholder="email"name = "email">
                                    </div>

                                    <div class="form-group">
                                         <label for="password">Password:</label>
                                        <input type="password" class="form-control" id="password" name="password" placeholder="Password">
                                     </div>
                                    <div class="form-group">
                                        <button style="cursor:pointer" type="submit" class="btn btn-primary">Submit</button>
                                     </div>
                                 </form>
                            </div>
                        </div>    
                    </div>
                </div>
            </div>
        </div>
    </div>
    
</section>
@endsection
0 likes
4 replies
Sergiu17's avatar

First, move the dump before validation

public function store(Request $request)
{
	dump($request);

to make sure you trigger this method.

second, add this to your view

@if ($errors->any())
    <div class="alert alert-danger">
        <ul>
            @foreach ($errors->all() as $error)
                <li>{{ $error }}</li>
            @endforeach
        </ul>
    </div>
@endif

I guess the problem is here

'password' => 'required|same:confirm-password',

you need to add a new field called Password Confirmation

1 like
luk's avatar
Level 1

@Sergiu17 i already remove in the validation confirm password , and i put the dump before the validation but still there in nothing i think i dont trigger the method i dont know why

Sergiu17's avatar

@habte does the page refresh when you submit it? Add error messages to your view. And also run php artisan route:list to make sure you have the route and points to the right controller

1 like
luk's avatar
Level 1

@Sergiu17 the page is not refresh when i submit ! and i check the route and points to the right controller

Please or to participate in this conversation.