现在我创建了一个连接到 mysql 数据库的登录表单,并在用户名和密码正确时键入该代码
<?php
session_start();
if (mysql_num_rows($res)== 1) {
$_SESSION['loggedin'] = $Email;
header("Location:userpage.php");
} else {
echo "Wrong Email or Password";
exit();
}
?>
并在我输入的用户页面中
<?php
session_start();
if(isset($_SESSION['loggedin'])){
}else{
header("Location:index.php")
}
在logout.php
<?php
session_start();
session_destroy();
header("location:index.php");
exit();
?>
它在我的本地主机上工作,但在虚拟主机上不起作用,在虚拟主机上它重定向到login.php并在那里停止。
我在这段代码中犯了什么错误吗?
请帮忙
最佳答案
在您的本地网络服务器中,您的error_reporting
设置似乎默认情况下未设置为ON,并且它是ON,但没有向您显示在您的网络服务器上。因此,我建议您在本地网络服务器中使用以下代码将其打开。可能是这样,您在 session_start()
header 之前输出了一些内容。
error_reporting(E_ALL);
ini_set('display_errors', '1');
关于mysql - mysql 和 php 中的 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17056418/