前言
学会使用cookie技术进行自动登录功能的实现.
auto_login.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"/> <title>用户登陆</title> <style> #showTime{ width:291px; border:1px solid #ccc; line-height:23px; position:absolute; left:500px; top:48px; text-align:center; } </style> </head> <body> <div id="login"> <ul> <form id="myForm" name="myForm" method="post" action='user_center.php'> <li> <tt> <label id="log_type" for="email">用 户:</label> </tt> <div> <input id="username" name="username" type="text" class="cell" value='<?php echo $_COOKIE['username']?>'/> </div> </li> <li> <tt> <label for="password">密 码:</label> </tt> <div> <input id="password" name="password" type="password" class="cell" value='<?php echo $_COOKIE['userpwd']?>'/>//如果cookie还存在的话,通过$_COOKIE['userpwd']可以获取cookie里面的userpwd值 </div> </li> <li> <div> <input id="auto_login" name="auto_login" type="checkbox" value="on"/> <label for="auto_login">下次自动登录</label> </div> </li> <li> <div> <input id="sub" type="submit" value='提交'/> </div> </li> </form> </ul> </div> </body> </html>
user_center.php
<?php if(!empty($_POST['username'])){//看看用户名存在的话,执行if里面的代码 if($_POST['username'] =='admin' && $_POST['password'] == 'admin'){ //用户名+密码==admin执行if里面的代码 if($_POST['auto_login'] == 'on'){//==on代表点了自动登录checkbox setcookie('username',$_POST['username'],time()+3600*7*24); //第一个参数是cookie的名字。第二个参数是用户名,第三个参数是过期时间 setcookie('userpwd',$_POST['password'],time()+3600*7*24); echo "<script>alert('开启自动登陆成功!');</script>"; } ?> <div style='margin:auto;width:300px;height:30px;line-height:30px;text-align:center;color:#fff;background:#ccc;'>使用cookie实现自动登陆</div> <div style='margin:auto;width:300px;border:1px solid #ccc;height:30px;line-height:30px;text-align:center;color:blue;background:#fff;'> 当前用户:<?echo $_POST['username'];?>,<a href='auto_login.php'>返回主页</a> </div> <? } } 注销:echo "<a href='logout.php?logout=zhuxiao'>注销登陆</a>"; ?>
logout.php
<?php if($_GET['logout']){ setcookie('username','',time()-1);//第三个参数代表过期时间为负数。就销毁cookie了 setcookie('userpwd','',time()-1);//第三个参数比当前时间还-1.代表没有时间 echo "<script>alert('注销成功!');location='auto_login.php';</script>";//返回首页 } ?>
效果: