大家好,下面的功能是登录到MySQL数据库,然后在用户移动到另一个页面时将用户重定向到PHP的主页,并显示以下错误:
错误:
ErrorException (E_ERROR)
Undefined index: Name (View: )
Php登录代码:
//Funzione di Login al db
function Login(Request $req)
{
try {
//Prepraro I parametri per l'inserimento nel db
$email = $req->input('email');
$password = $req->input('password');
$users = DB::table('Utente')->where('Email', '=', $email)->Where('Password', $password)->first();
$name = $users->Nome;
if ($name != "") {
session_start();
$_SESSION["Email"] = $email;
$_SESSION["Password"] = $password;
$_SESSION["Name"] = $name;
return view('home');
}
} catch (Exception $e) {
echo 'Caught exception: ', $e->getMessage(), "\n";
}
}
要验证会话是否已关闭并在打开的情况下,我已在每个页面的开头阅读了以下php代码:
<?php
if (session_status() == PHP_SESSION_NONE) {
session_start();
}
?>
我该如何解决此错误?
答案 0 :(得分:0)
第一件事:您的会话数组似乎没有“名称”索引。
第二件事:php文档在PHP_SESSION_NONE https://php.net/session_status之前报告三等分,也许这无关紧要...但是恕我直言,总比没有好
第三件事:为什么不使用Laravel会话https://laravel.com/docs/5.8/session或更确切地说使用Laravel身份验证https://laravel.com/docs/5.8/authentication