PHP 登录记住密码实现思路

form页面


代码如下:

<form action="login.php" method="post">
用户名<input type="text" name="username"><br>
密码<input type="text" name="password"><br>
记住密码<input type="checkbox" name="jizhu" value="1"><br>
<input type="submit">
</form>
<a href="userinfo.php">用户信息</a>
<?php
session_start();
function p($arr){
echo "<pre>";
print_r($arr);
echo "</pre>";
}
p($_SESSION);
p($_COOKIE);
?>

登录页面


代码如下:

<?php
function p($arr){
echo "<pre>";
print_r($arr);
echo "</pre>";
}
session_start();
//p($_POST);
$_SESSION['username'] = $_POST['username'];
$_SESSION['password'] = $_POST['password'];
if($_POST['jizhu']){
setcookie('username',$_POST['username'],time()+60);
setcookie('password',$_POST['password'],time()+60);
}
header("location:form.php");

用户信息页面


代码如下:

<?php
session_start();
echo "先关闭浏览器,在访问form.php 试试,然后 点推出在关闭浏览器试试";
p($_SESSION);
p($_COOKIE);
if(empty($_SESSION['username'])){
if(empty($_COOKIE['username'])){
echo "<a href='form.php'>请先登录</a>";exit;
}else{
$_SESSION['username'] = $_COOKIE['username'];
}
}
function p($arr){
echo "<pre>";
print_r($arr);
echo "</pre>";
}
?>
2131231231
<a href="updateuserinfo.php">修改信息</a>
<a href="logout.php">推出</a>

推出页面


代码如下:

<?php
session_start();
unset($_SESSION['username']);
unset($_SESSION['password']);
setcookie('username','',0);
setcookie('password','',0);
header("location:form.php");
?>

修改用户信息页面


代码如下:

<?php
session_start();
if(empty($_SESSION['username'])){
echo "请先登录";
}else{
echo "这里是信息";
}
?>

(0)

相关推荐

  • PHP中常用的转义函数

    1. addslashes addslashes对SQL语句中的特殊字符进行转义操作,包括('), ("), (), (NUL)四个字符,此函数在DBMS没有自己的转义函数时候使用,但是如果DBMS有自己的转义函数,那么推荐使用原装函数,比如MySQL有mysql_real_escape_string函数用来转义SQL. 注意在PHP5.3之前,magic_quotes_gpc是默认开启的,其主要是在$GET, $POST, $COOKIE上执行addslashes操作,所以不需要在这些变量上重

  • php实现处理输入转义字符的代码

    先来个函数,是最近WordPress 3.6中刚刚引入的 /** * Add slashes to a string or array of strings. * * This should be used when preparing data for core API that expects slashed data. * This should not be used to escape data going directly into an SQL query. * * @since

  • PHP字符转义相关函数小结(php下的转义字符串)

    文章中有不正确的或者说辞不清的地方,麻烦大家指出了--- 与PHP字符串转义相关的配置和函数如下: 1.magic_quotes_runtime 2.magic_quotes_gpc 3.addslashes()和stripslashes() 4.mysql_escape_string() 5.addcslashes()和stripcslashes() 6.htmlentities() 和html_entity_decode() 7.htmlspecialchars()和htmlspecialc

  • PHP字符串中特殊符号的过滤方法介绍

    有时候我们会遇到过滤字符串中特殊字符的问题,本文提供了一个处理特殊字符串的方法,可能有遗漏,如果读者发现了可以留言告诉我,谢谢. 复制代码 代码如下: function strFilter($str){    $str = str_replace('`', '', $str);    $str = str_replace('·', '', $str);    $str = str_replace('~', '', $str);    $str = str_replace('!', '', $st

  • php 字符转义 注意事项

    在php中: * 以单引号为定界符的php字符串,支持两个转义\'和\\ * 以双引号为定界符的php字符串,支持下列转义: \n 换行(LF 或 ASCII 字符 0x0A(10)) \r 回车(CR 或 ASCII 字符 0x0D(13)) \t 水平制表符(HT 或 ASCII 字符 0x09(9)) \\ 反斜线 \$ 美元符号 \" 双引号 \[0-7]{1,3} 此正则表达式序列匹配一个用八进制符号表示的字符 \x[0-9A-Fa-f]{1,2} 此正则表达式序列匹配一个用十六进制符

  • PHP实践教程之过滤、验证、转义与密码详解

    本文主要给大家介绍的是关于PHP实践之过滤.验证.转义与密码等相关的内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍: 一.过滤.验证和转义 1).不要相信任何来自不受自己直接控制的数据源中的数据.包括但不限于: $_GET $_POST $_REQUEST $_COOKIE $argv php://stdin php://input file_get_contents() 远程数据库 远程API 来自客户端的数据 2).解决办法:过滤输入.删除不安全的字符,在数据到达应用的存

  • php正则过滤html标签、空格、换行符的代码(附说明)

    复制代码 代码如下: $str=preg_replace("/\s+/", " ", $str); //过滤多余回车 $str=preg_replace("/<[ ]+/si","<",$str); //过滤<__("<"号后面带空格) $str=preg_replace("/<\!--.*?-->/si","",$str); //

  • 理解php Hash函数,增强密码安全

    1.声明 密码学是一个复杂的话题,我也不是这方面的专家.许多高校和研究机构在这方面都有长期的研究.在这篇文章里,我希望尽量使用简单易懂的方式向你展示一种安全存储Web程序密码的方法. 2."Hash"是做什么的? "Hash将一段数据(小数据或大数据)转换成一段相对短小的数据,如字符串或整数." 这是依靠单向hash函数来完成的.所谓单向是指很难(或者是实际上不可能)将其反转回来.一个常见的hash函数的例子是md5(),它流行于各种计算机语言和系统. 复制代码 代

  • php中实现记住密码下次自动登录的例子

    做网站的时候经常会碰到要实现记住密码,下次自动登录,一周内免登陆,一个月内免登陆这种需求.这种功能一般都是通过cookie来实现的.本篇文章将简单说一下如何使用php实现该需求的.当然实现该需求的方法有N多种. 整个过程就是用户在登陆的时候,如果选择了记住密码或者一周内免登陆等这个选项的时候,则在用户成功登陆操作完成之后,存储一个实现自动登录的cookie的数据到数据库的用户表里面,作为下次自动登录时验证用.验证通过则自动登录,否则需要输入用户名,密码进行登录.保存的这个cookie值则可以取一

  • php中实现记住密码自动登录的代码

    php实现记住密码自动登录方法不止一个,下面出现有二个emptyempty,其实是一个,那是因为代码高亮有bug.希望对大家有帮助. 一,用户登录的check 复制代码 代码如下: //检查用户是否登录 function checklogin(){ if(emptyempty($_SESSION['user_info'])){ //检查一下session是不是为空 if(emptyempty($_COOKIE['username']) || emptyempty($_COOKIE['passwo

随机推荐