2016-10-27 4 views
0

Ich mache gerade ein Projekt. Dabei möchte ich, dass die Benutzeranmeldung entweder seine E-Mail oder Benutzername aber diese stecken Während ich dies nicht tun kann. Ich möchte Folgendes: Wenn ein Benutzer seine E-Mail-Adresse oder seinen Benutzernamen und sein Passwort angibt, kann er sich bei seinem Panel anmelden. Ich benutze Laravel 5.3 Standardfunktion. Ich mache das in Laravel 5.1, kann dies aber in 5.3 nicht tun. Bitte helfen Sie.Benutzername und E-Mail insgesamt einloggen in Laravel 5.3

Antwort

0

Sie können dies durch Überschreiben login() Methode in Auth\LoginController.php. dies prüfen nur, ob Anmeldeinformationen gültig sind und tun:

return $this->sendLoginResponse($request); 

Zum Beispiel:

if (Hash::check($request->password, $passwordFromDB) && ($request->username == $usernameFromDB || $request->email == $emailFromDB)) { 
    return $this->sendLoginResponse($request); 
} 

return $this->sendFailedLoginResponse($request); 
+0

Wenn ich diese fügen Sie es mir 'FatalThrowableError in LoginController.php Linie 42 Fehler gibt: Parse-Fehler: Syntaxfehler, Unerwarteter 'Return' (T_RETURN), erwartete Funktion (T_FUNCTION) ' –

+0

@JahidMahmud, du solltest es nicht einfach hinzufügen. Sie sollten den 'login()' Controller außer Kraft setzen und dort Anmeldeinformationen hinzufügen. Wenn diese Zugangsdaten gültig sind, dann sollten Sie 'return $ this-> sendLoginResponse ($ request) ausführen;' –

+0

Aber wie kann ich das tun? @AlexeyMezenin. Ich habe versucht, aber es gibt mir nur entweder E-Mail-Adresse oder Benutzername nicht beide –