目录结构:
一、新建common.php封装cookie方法:获取上一次访问时间和获取cookie某个key对应的值:
<?php
function getLastTime(){
date_default_timezone_set('PRC'); // 中国时区
if(!empty($_COOKIE['lastVisit'])){
echo "您上次登陆的时间是:".$_COOKIE['lastVisit'];
//更新时间
setcookie("lastVisit",date("Y-m-d H:i:s",time()),time() + 24*3600*30);//保存一个月
}else{
echo "您本月第一次登陆!";
setcookie("lastVisit",date("Y-m-d H:i:s",time()),time() + 24*3600*30);//保存一个月
}
}
function getCookie($key){
if (empty($_COOKIE[$key])) {
return "";
}else{
return $_COOKIE[$key];
}
}
?>
二、修改login.php文件
<?php
require_once 'common.php';
?>
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8"/>
<TITLE>管理员登陆系统</TITLE>
<h1>管理员登陆</h1>
<form action="loginProcess.php" method="post">
<table>
<tr><td>用户id</td><td><input type="text" name="id" value="<?php echo getCookie("id");?>"/></td></tr>
<tr><td>密 码</td><td><input type="password" name="password" value="<?php echo $_GET['password'];?>"/></td></tr>
<tr><td>是否保存</td><td><input type="checkbox" name="save" value="yes"/></td></tr>
<tr><td><input type="submit" value="用户登录"/></td>
<td><input type="reset" vallue="重新填写"/></td>
</tr>
</table>
</form>
<?php
//接受错误信息
if (!empty($_GET['error'])) {
$error = $_GET['error'];
if ($error == 1) {
echo "<font color='red' size='3'>您的用户名或者密码错误!</font>";
}
}
?>
</head>
</html>
三、修改loginProcess.php获取复选框 是否要保存用户id到cookie的信息:
<meta http-equiv="content-type" content="text/html;charset=utf-8"/>
<?php
require_once 'AdminService.class.php';
//接受用户的数据
//1.id
$id = $_POST['id'];
//2.密码
$password = $_POST['password'];
//3.获取用户是否保存账号与密码到cookie中
if (empty($_POST['save'])) {
echo "用户不保存";
if (!empty($_COOKIE["id"])) {
setcookie("id",$id,time()-100);//清空保存的在cookie中的用户id
}
if (!empty($_COOKIE["password"])) {
setcookie("password",$password,time()-100);//清空保存在cookie中的密码
}
}else{
echo "用户保存";
setcookie("id",$id,time()+ 7*24*3600);//保存2个星期
}
//实例化AdminService
$adminService = new AdminService();
$name = $adminService->checkAdmin($id, $password);
if ($name!="") {
header("Location: erpManager.php?name=$name");
exit();
}else{
header("Location: login.php?error=1&id=$id&password=$password&name=$name");
exit();
}
?>
四、效果图:
五、cookie的基本用法:
cookie默认存储位置:C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\Cookies
<?php
//print_r($_COOKIE);
//echo $_COOKIE['name'];
//echo urldecode("%e5%bc%a0%e9%94%8b%e9%9c%b2");
//删除所有cookie中所有的内容
//foreach($_COOKIE as $key=>$val){
// setCookie($key,"",time()-1);
//}
date_default_timezone_set('PRC'); // 中国时区
if(!empty($_COOKIE['lastVisit'])){
echo "您上次登陆的时间是:".$_COOKIE['lastVisit'];
//更新时间
setcookie("lastVisit",date("Y-m-d H:i:s",time()),time() + 24*3600*30);//保存一个月
}else{
echo "您本月第一次登陆!";
setcookie("lastVisit",date("Y-m-d H:i:s",time()),time() + 24*3600*30);//保存一个月
}
echo "<br/>".date('Y-m-d H:i:s',time());
?>
文件下载地址:http://download.csdn.net/detail/fendouxiaoniao/8806513