我在做一个登录和注册画面,注册画面很完美,但是登录画面让我很头疼去认证。
注册完成,但只要我登录它给出此错误...
"未定义属性:照明\支持\外观\请求::$电子邮件"
我不知道还能做些什么来让它工作。
控制器:
<?php
namespace App\Http\Controllers;
use App\Models\Usuario;
use Illuminate\Support\Facades\Auth;
use Request;
class Usuarios extends Controller
{
public function cadastrar()
{
$usuario = new Usuario(Request::all());
$usuario->save();
return redirect('/')->with('mensagem_sucesso', 'Cadastro efetuado com sucesso!');
}
public function index()
{
return view('layout/cadastrousuario');
}
public function indexlogin()
{
return view('layout/login');
}
public function logar(Request $request)
{
if (Auth::attempt(['email' => $request->email, 'password' => $request-> password])) {
dd('voce esta logado');
} else {
dd('voce nao esta logado');
}
}
}
型号:
<?php
namespace App\Models;
use App\Models\Model\Request;
use DB;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Illuminate\Support\Facades\Hash;
class Usuario extends Authenticatable
{
protected $table = 'usuario';
public $timestamps = false;
protected $fillable =
array(
"codigo",
"nome",
"email",
"apelido",
"senha",
"bloqueado",
"saldo",
"saldo_atual",
"admin"
);
use HasFactory;
}
路线:
<?php
use App\Http\Controllers\Lancamentos;
use App\Http\Controllers\LancamentosSimplificado;
use App\Http\Controllers\Usuarios;
use Illuminate\Support\Facades\Route;
// Route = (rota)::get ou post = (method) ( '/home' = (link) , [Lancamentos = (controller) :: class, 'logar' = ( function) ;
Route::get('/', [Lancamentos::class, 'index']);
Route::get('/salvar', [Lancamentos::class, 'salvar']);
Route::get('/maisdetalhes/{codigo}', [Lancamentos::class, 'maisdetalhes']);
Route::get('/criarchat', [Lancamentos::class, 'criarchat']);
Route::post('/cadastrar', [Lancamentos::class, 'cadastrar']);
Route::post('/cadastrar-simplificado', [LancamentosSimplificado::class, 'cadastrar']);
Route::get('/criarchat', [LancamentosSimplificado::class, 'listar']);
Route::get('/chat/{codigo}', [Lancamentos::class, 'chat']);
Route::get('/chatcriado/{codigo}', [LancamentosSimplificado::class, 'chatcriado']);
Route::get('/cadastrar-usuario', [Usuarios::class, 'index']);
Route::post('/cadastrar-usuario', [Usuarios::class, 'cadastrar']);
Route::get('/login', [Usuarios::class, 'indexlogin']);
Route::post('/login', [Usuarios::class, 'logar']);
点击登录后立即查看页面图片
首先,您必须在注册功能中进行验证,以确保电子邮件地址正确到达并已注册。我首先修改这个函数
public function cadastrar(Request $r)
{
$r->validate([
'name' => 'required|string',
'email' => 'required|email|unique:users',
'password' => 'min:6',
'password_confirmation' => 'required_with:password|same:password|min:6',
'custom_field' => 'custom validation'
]);
$input = $r->all();
$input['password'] = Hash::make($r->password);
$utilisateur = Model::create($input); //the Model == Usuario;
return redirect('/')->with([
'message' => "Cadastro efetuado com sucesso!",
'alert-type' => 'success',
]);
}
这只是一个代码片段,我不会假装它正是您所需要的。接下来是登录功能
if (Auth::attempt(['email' => $r->email, 'password' => $r->password])) {
// The user is active, not suspended, and exists.
$user = Auth::user();
if($user->fcm_token != Null){
$token = $user->createToken('AUTH')->accessToken;
$user->remember_token = $token;
$user->device_token = $user->fcm_token;
$user->save();
$response = [
"data"=> [
'user'=> $user,
'token'=> $token,
],
'message_fr' => 'Utilisateur connecté avec succès',
'message_en' => 'User logged successfully',
];
return response()->json($response, 200);
}else{
$response = [
'message_fr' => 'Vous êtes peut-être un robot',
'message_en' => 'You may be a robot',
];
return response()->json($response, 422);
}
} else {
$response = [
'message_fr' => 'Veuillez vérifier vos informations de connexion',
'message_en' => 'Please check your login information',
];
return response()->json($response, 422);
}
由于您在注册簿上进行了验证,因此您可以确保电子邮件不仅存在,而且符合电子邮件的名称
这两种方法都是从我的可用项目源代码中选取的示例,祝你好运
我对laravel很陌生,我在这里尝试制作一个简单的注册和登录表单,注册表单在数据库中注册用户,登录表单登录用户,但在这里我遇到了这个错误。我花了很多时间试图解决这个问题,查阅了许多资源,但没有找到答案,如果有任何帮助,我们将不胜感激。。谢谢 错误:未定义属性:照明\支持\外观\请求::$电子邮件 刀身 控制器
我是拉雷维尔的新手。我有一个控制器,我只想从标题中获取授权的值。我看到了其他堆栈溢出答案,建议我使用
我刚开始学习Laravel,但我在路由到控制器时遇到了问题,我有一个名为“App”的控制器,其中有一个名为index的函数,它说即使我在路由中设置了它,也无法在“App”控制器中找到它 错误 错误 调用到未定义的方法照明\支持\Facades\应用程序::索引() http://localhost:8000/anasayfa 应用程序。php 网状物php 这个错误的原因是什么?
这是我的代码: 当我运行它时,它抛出以下错误: 未找到类“Illumbite\Support\Facades\Paginator” 注意:我使用的是Laravel Framework版本5.2.45。 我该怎么修?
我想在laravel应用程序中显示目录的所有文件,这里是关于Finder的错误发生,有人可以帮助我吗? 未找到类“Illumbite\Support\Facades\Finder” 代码
我创建了我的laravel项目如下: 这将使用laravel版本8创建我的项目。由于我想使用拉腊维尔7,我修改了作曲家。json: 之后我运行: 以描述的错误结束(未找到Class Illumate\Support\Facades\RateLimiter) 事实上,该类不存在于Support facade中。降级过程不应该纠正这一点吗?