我是一个新的程序员,我只是在服务器编程方面学习一些PHP。但我很难理解cookies和会话。我目前正在进行这一项练习,并且需要一些语法帮助,以及所有内容都将落实到位。另外,我不确定如何格式化所需日期,我需要确保我的if语句是正确的。下面是我工作的第一部分中的官方说明,其次是代码,我到目前为止有:PHP cookie和会话
的login.php
使用的login.php文件,只允许注册用户登录在(现在是硬编码值)。注意:永远不要在现实生活中将用户和密码信息放在url变量中!
- 如果他们登录正确: 记录这一事实在一个名为“的loggedIn”与“真”,
-set用“的loggedIn”的名字的cookie和值的$ _SESSION变量日期和时间值(格式如:2015年1月25日上午10:00 - 使用http://php.net/manual/en/function.date.php作为参考),在10分钟后过期,然后发送到admin.php。
- 如果他们不登录正确打印一条消息说“无效登录”
- 如果他们以前已登录(如果会话变量存在),那么只需将它们重新定向到管理PHP页面
- 他们将通过URL提供的用户名和密码: kelvin.ist.rit.edu/~username/341/lab2/login.php?user=admin &密码=密码
- 使用$ _GET ['user']和$ _GET ['password']来获取用户名和密码 。
- 如果他们不提供这两个值,显示消息“无效登录”
<?php
error_reporting(E_ALL);
session_start();
$username = "student";
$password = "student";
if(empty($_SESSION['loggedIn'])) {
$_SESSION['loggedIn'] = true;
$loggedIn = $_COOKIE['loggedIn'] = string date (string $format [, int
$timestamp = time()+600]); //expires 10 minutes from now
header("Location: admin.php");
exit;
} else {
echo "<h2>Invalid Login</h2>";
}
if(!empty($_SESSION['loggedIn'])) {
header("Location: admin.php");
exit;
$_GET['username'];
$_GET['password'];
} else {
echo "<h2>Invalid Login</h2>";
}
setcookie("test_cookie",$path, $domain, $loggedIn, $expire);
?>
饼干和会话不是一回事。另外,这不是你在PHP中投入的方式。 – PHPglue
@ system0verl0ad我在下面回答你的问题吗?不投反对票 – pogeybait