php 怎么实现七天自动登录

php实现七天自动登录的方法:1、新建show.php文件实现登录页面;2、创建function.php文件实现加密cookie;3、设置用户名和密码的判断;4、开启session并实现一周内自动登录即可。

本文操作环境:Windows7系统,PHP7.4版,Dell G3电脑。

php 怎么实现七天自动登录?

PHP实现一周内自动登陆:

1.新建四个文件

show.php

<?php?><html ><head><meta charset=\”utf-8\”><title>测试</title></head><body><form action=\”login.php\” method=\”post\”>用户名<input type=\”text\” name=\”name\”/>密码<input type=\”text\” name=\”psd\”/>自动登录<input type=\”radio\” name=\”auto\”> <input type=\”submit\” value=\”提交\”/></form></body></html>

function.php//加密cookie 这里我用了异或加密的方法,因为经过两次异或,会变回原来的值

<?phpfunction encryption ($value, $type=0) {$key = md5(\’denglu\’);//里边的字符可以自己设置if (!$type) {return str_replace(\’=\’, \’\’, base64_encode($value ^ $key));}$value = base64_decode($value);return $value ^ $key;}

login.php

<?phprequire_once(\’function.php\’);session_start();//开启sessionheader(\”Content-Type: text/html; charset=UTF-8\”);/* * 添加一些用户名和密码的判断 * 。。。。。。。。。 */if(isset($_POST[\’auto\’])){//如果勾选了自动登陆一周 if(!isset($_COOKIE[\’auto\’])){ setcookie(\’auto\’,encryption($_POST[\’name\’]),7*24*3600 time());//设置cookie过期时间为一周后 } $_SESSION[\’name\’] = $_POST[\’name\’]; header(\’location:success.php\’);}else{//没有勾选自动登陆一周 $_SESSION[\’name\’] = $_POST[\’name\’]; header(\’location:success.php\’);}

success.php

<?phpsession_start();//开启sessionrequire_once(\’function.php\’);header(\”Content-Type: text/html; charset=UTF-8\”);if(isset($_SESSION[\’name\’])){echo \’成功登陆session:用户名为\’.$_SESSION[\’name\’];}elseif(isset($_COOKIE[\’auto\’])){echo \’成功登陆cookie:用户名为\’.encryption($_COOKIE[\’auto\’],1);}else{//什么都没有的跳转到登录表单header(\’location:show.php\’);}?>

运行一下

查看一下cookie

把浏览器关闭再打开,此时是读取cookie

这里只是提供提供一个思路,具体的登录验证还有待读者自己思考。

推荐学习:《PHP视频教程》

更多关于云服务器域名注册虚拟主机的问题,请访问西部数码官网:www.west.cn

赞(0)
声明:本网站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-62778877-8306;邮箱:fanjiao@west.cn。本站原创内容未经允许不得转载,或转载时需注明出处:西部数码知识库 » php 怎么实现七天自动登录

登录

找回密码

注册