J'ai créé un système de connexion mais il indique que les informations de connexion sont erronées et que je ne peux pas me connecter
P粉946336138
P粉946336138 2024-03-20 00:21:28
0
1
345

Je souhaite créer un système de connexion simple et j'en ai créé un, mais les informations de connexion sont erronées. Ma tentative de faire un test de vidage renvoie null. Voir le test dd dans les commentaires. Pour cette raison, je ne peux pas me déconnecter

Mon contrôleur de connexion est :

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use App\Models\User;
use Validator;

class LoginController extends Controller
{
    public function index()
    {
        return view('login');
    }

    
    public function store(Request $request)
    {
        $this->validate($request, [
            'email'   => 'required|email',
            'password'  => 'required|alphaNum|min:3'
                ]);

        $user_data = array(
            'email' => $request->get('email'),
            'password' => $request->get('password')
        );
        
        //$user = Auth::user();
        //dd($user);              I have done dump test but it is returning null
        
        if(Auth::attempt($user_data))
        {
            return redirect()->route('welcome');
        }
        else
        {
            return back()->with('error','wrong Login Details');
        }
    } 
}

Ma lame de connexion est

@if ($message = Session::get('error'))
                <div class="alert alert-danger alert-block">
                    <button type="button" class="close" data-dismiss="alert">×</button>
                        <strong>{{ $message }}</strong>
                </div>
          @endif
           @if (count($errors) > 0)
            <div class="alert alert-danger">
                    <ul>
                            @foreach($errors->all() as $error)
                                <li>{{ $error }}</li>
                            @endforeach
                    </ul>
            </div>
           @endif
      
    <form action="{{route('login.save')}}" style="border:1px solid #ccc" method="post">
                {{ csrf_field() }}
        <div class="container">
            <h1>Login</h1>
            <p>Please fill in this form to Login</p>
            <hr>
            <label for="email"><b>Email</b></label>
            <input type="text" placeholder="Enter Email" name="email" value="{{old('name')}}" >
                @error('email')
                  {{$message}}
                @enderror  

            <label for="psw"><b>Password</b></label>
            <input type="password" placeholder="Enter Password" name="password"  >
                @error('password')
                  {{$message}}
                @enderror  

            <label for="psw-repeat"><b>Repeat Password</b></label>
            <input type="password" placeholder="Repeat Password" name="psw-repeat" >
            <div class="clearfix">
                <button type="submit" class="signupbtn">Log in</button>
            </div>
        </div>
    </form>
</body>
</html>

Le routage réseau est

Route::get('/register','App\Http\Controllers\RegisterController@index')->name('register');
Route::post('/register/save','App\Http\Controllers\RegisterController@store')->name('register.save');
Route::get('/login','App\Http\Controllers\LoginController@index')->name('login');
Route::post('/login/save','App\Http\Controllers\LoginController@store')->name('login.save');
Route::get('/welcome','App\Http\Controllers\LogoutController@store')->name('logout');

P粉946336138
P粉946336138

répondre à tous(1)
P粉710454910

Essayez de déboguer votre code

1- Vérifiez la base de données après l'inscription. Votre mot de passe est-il crypté ?

2-Lors de la soumission du formulaire dd($request->all()) Si tout se passe bien

3- Auth::attempt($request->only('email', 'password'))

J'espère que cette réponse vous aidera à déboguer votre code.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal