作者:陈业贵 华为云享专家 51cto(专家博主 明日之星 TOP红人) 阿里云专家博主
Cookie是保存在客户端的纯文本文件,比如txt文件,所谓的客户端就是我们自己的本地电脑,当我们使用自己的电脑通过浏览器进行访问网页的 时候,服务器就会生成一个证书并返回给我的浏览器并写入我们的本地电脑,这个证书就是cookie。
问题? cookie在浏览器关闭后还存在吗? 还存在. cookie怎么才能消失? 设置cookie过期时间为负数. 或者过期时间结束了
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"/>
<title>用户登录</title>
<link rel='stylesheet' type='text/css' href='style.css'>
<style>
#showTime{
width:291px;
border:1px solid #ccc;
line-height:23px;
position:absolute;
left:500px;
top:48px;
text-align:center;
}
</style>
</head>
<body>
<?php
if(isset($_COOKIE['login_now'])){//获取cookie
echo "<div id='showTime'>";
echo '您上次登录的时间为:'.$_COOKIE['login_now'];//输出来cookie的值
echo "</div>";
}
?>
</div>
<div id="login">
<ul>
<form id="myForm" name="myForm" method="post" action='login_time.php'>
<li>
<input id="login_type" name="login_type" type="hidden"/>
<tt>
<label id="log_type" for="email">Email:</label>
</tt>
<div>
<input id="username" name="username" type="text" class="cell" />
</div>
</li>
<li>
<tt>
<label for="password">密 码:</label>
</tt>
<div>
<input id="password" name="password" type="password" class="cell" />
</div>
</li>
<li>
<div>
<input id="sub" type="submit" value='登录'/>
</div>
</li>
</form>
</ul>
</div>
</body>
</html>
<?php
date_default_timezone_set('Asia/Shanghai');//设置时区为东八区
$name=$_POST['username'];//获取用户名
$pwd=$_POST['password'];//获取密码
if($name == 'admin' && $pwd == 'admin'){//如果用户名+密码===admin的话,执行if里面的语句
setCookie('login_now',date('Y-m-d H:i:s'),time()+3600*24);//设置cookie。第一个参数,cookie的名字,第二个参数cookie的值。第三个参数。cookie的过期时间
echo "<script>alert('登录成功!');location='login_in.php'</script>";
}else{
echo "<script>alert('登录失败!');location='form_login.php'</script>";
}
?>
<?php
echo "用户登录时间:".$_COOKIE['login_now']."<br>";//输出来cookie的值
?>