我遇到了这个问题,所以我运行我的PHP代码并且登录成功,但我仍然得到这个警报。 我的login.php是:
<?php
include 'config.php';
$email = $_POST['email'];
$password = md5($_POST['password']);
$sql = ("select email from Empregados where email='" . $email . "' and password='".$password."'");
$result = mysqli_query($conn,$sql);
if(mysqli_num_rows($result))
{
$row=mysqli_fetch_assoc($result);
session_start();
$_SESSION[] = $row['email'];
echo "<p>Login com sucesso</p>";
}
else
{
echo "<p>Dados incorretos</p>";
}
?>
注意:未知:在第0行的“未知”中跳过数字键0
答案 0 :(得分:0)
PHP会话存储机制最初是围绕“注册”变量构建的,因此$_SESSION
中的键必须是可以作为变量处理的名称。
这意味着$_SESSION[]
或$_SESSION[22]
无效,因为它不是有效的变量名称,$_SESSION[]
也是无效的。
解决方案是在会话变量上使用前缀(例如$ _SESSION ['email'] = $ row ['email'];)