Руководство по входу в Laravel

Я пытаюсь войти без использования php artisan make: auth .. Я не знаю, почему в моем операторе select показывается ошибка входа в систему, хотя я ввожу правильно. Я надеюсь, что кто-нибудь может мне помочь. Ниже я прилагаю код. заранее спасибо

public function shw(Request $request)
{
$email = $request->input('email');
$password = $request->input('password');

$checkLogin = DB::table('admin')->where(['email'=>$email,'password'=>$password])->get();
if($checkLogin === true)
{
echo "Login Successfull";
return redirect('/dashboard');
}
return "fail";
}

/**

0

Решение

если пароль не хеширован, просто измените эти строки

public function shw(Request $request)
{
$email = $request->input('email');
$password = $request->input('password');

$checkLogin = DB::table('admin')->where(['email'=>$email,'password'=>$password])->first();
if(!is_null($checkLogin))
{
echo "Login Successfull";
return redirect('/dashboard');
}
return "fail";
}
0

Другие решения

Я действительно советую вам использовать функции аутентификации в Laravel. Этот уже построен с безопасностью, которая вам нужна. (Почему вы хотите использовать свой собственный?)

По умолчанию хеши паролей хранятся в базе данных, а не в виде простого текста. Вы должны использовать встроенный Auth фасад

Как это:

use Illuminate\Support\Facades\Auth;

// Get the currently authenticated user...
$user = Auth::user();

// Get the currently authenticated user's ID...
$id = Auth::id();

Когда $ user или $ id пусты, вы можете предположить, что пользователь не вошел в систему.

Вы можете проверить это с этим примером

if (Auth::check()) {
// The user is logged in...
}

Но я всегда предпочитаю использовать промежуточное программное обеспечение на ваших маршрутах

Route::put('post/{id}', function ($id) {
//
})->middleware('auth');

Может быть этот поможет вам.

0

Проблема заключается в админ Таблица. Там нет таблицы администратора, созданной:

php artisan make:auth

Таблица, которая отвечает за пользователей пользователи Таблица. Итак, попробуйте это:

DB::table('users')->where(['email'=>$email,'password'=>$password])->get();
0

Используйте код как это:

$user = User::where('email',$request->email)->first();
if ($user && $user->active && \Hash::check($request->password, $user->password)) {
// do something
}
0
По вопросам рекламы ammmcru@yandex.ru
Adblock
detector