首先,我不会建立一个使用数据库的登录系统,我知道它更安全,但在这种情况下,它并不相关...
我有三个文件login.php,admin.php和config.php。用户的电子邮件和密码存储在config.php中的变量中。如果用户登录会话应该设置。然后,如果用户没有登录尝试访问admin.php": - ("应该打印。但现在": - ("始终打印)我编码所有内容都需要做错...
的config.php:
<?php
//site data
$title = "Abbesplace";
$siteurl = "index.php";
//user data
$password = "testtest";
$email = "example@example.com";
$name = "Albin Larsson";
?>
的login.php:
<?php
require_once("config.php");
if (($_POST['email'] == $email && $_POST['password'] == $password)) {
//login
session_start();
$_SESSION['logged']= "welcometomoon";
header("Location: admin.php");
} else {
echo "login faild";
}
?>
<!DOCTYPE HTML>
<html>
<head>
<title>Login</title>
</head>
<body>
<div>
<form method="post" action="login.php">
Email:<input type="email" name="email"/>
Password:<input type="password" name="password"/>
<input type="submit"/>
</form>
</div>
</body>
</html>
admin.php的:
<?php
if(isset($_SESSION['logged'])){
echo "Hello";
} else {
echo ":-(";
}
?>
关于我应该做些什么的任何建议? (当我来到PHP时,我是新手)...
答案 0 :(得分:4)
您必须在每个页面上调用session_start。现在,只有在发布到登录表单时才调用它。