php用cookie来实现登录界面的方法:1、设置登录表单;2、设置文本框默认值为cookie中的内容;3、在表单的处理界面添加if判断即可。
本文操作环境:Windows7系统、PHP7.1版、Dell G3电脑。
php怎么用cookie来实现登陆界面?PHP 登录界面利用 cookie 记住账号密码
cookie 原理:
cookie 在服务器端进行创建,并返回给客户端浏览器本地保存,通过设置生命周期,来确定 cookie 保存时长。
实现过程:
<!-- 登录表单 --> <div class='div_login' id='login'> <form name='login_form' method="post" action="/FirstPHPWeb/application/controllers/loginCl.php"> <!-- 在此处设置文本框默认值为 cookie 中的内容 --> 账 号:<input type="text" name="id" value="<?php echo @$_COOKIE['id']; ?>"/><br/> 密 码:<input type="password" name="psw" value="<?php echo @$_COOKIE['psw']; ?>"/><br/> 验证码:<input type="text" name="checkcode" /><br/> <img id='login_checkcode_img' onclick="changeCode('login_checkcode_img')" src="../controllers/createCheckCode.php" ><a href="#" onclick="changeCode('login_checkcode_img')">看不清楚,换一张</a><br/> <input type="checkbox" name="isKeepInfo" value="keep" checked/>在此电脑上保留用户名<br/> <input class='btn' type="image" src='/FirstPHPWeb/public/img/login.png' alt='submit' name='login' value='登陆' /> </form>
// 在表单的处理界面添加判断 if($isKeepInfo){ setcookie("id", "$id", time()+3600*24*7,'/'); setcookie("psw", "$psw", time()+3600*24*7,'/'); }
细节:
实现这个功能并不复杂,但是在实际应用的时候也会忽略一个小的细节:
这里先了解一下 setcookie 函数,开发文档中给出以下语法:
setcookie(name, value, expire, path, domain);
name,value:以键值对的方式存储 cookie 数据;
expire:过期时间,时间戳格式(可选)。不设置则默认为会话级cookie,在浏览器关闭后cookie失效。
path:服务器端有效路径(可选)。默认为当前设置cookie时页面的路径;
domain:该cookie有效的域名(可选),只有指定的域名才可以拿到cookie,默认所有域名都可以拿到。【推荐学习:PHP视频教程】
当表单文件和表单处理文件不在同一目录下时,一定要记得设置 path 属性,否则在表单界面下会取不到存在 cookie 用户名和密码。
以上是php怎么用cookie来实现登陆界面的详细内容。更多信息请关注PHP中文网其他相关文章!