知识大全 php中如何同时使用session和cookie来保存用户登录信息
Posted 知
篇首语:浪再高,也在船底;山再高,也在脚底。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 php中如何同时使用session和cookie来保存用户登录信息相关的知识,希望对你有一定的参考价值。
本篇文章是对在php中同时使用session和cookie来保存用户登录信息的实现代码进行了详细的分析介绍 需要的朋友参考下同时使用session和cookie来保存用户登录信息 数据库连接配置页面 connectvars php
复制代码 代码如下: <?php //数据库的位置 define( DB_HOST ); //用户名 define( DB_USER root ); //口令 define( DB_PASSWORD ); //数据库名 define( DB_NAME test ) ; ?>登录页面 logIn php
复制代码 代码如下: <?php //插入连接数据库的相关信息 require_once connectvars php ; //开启一个会话 session_start(); $error_msg = ""; //如果用户未登录 即未设置$_SESSION[ user_id ]时 执行以下代码 if(!isset($_SESSION[ user_id ])) if(isset($_POST[ submit ]))//用户提交登录表单时执行如下代码 $dbc = mysqli_connect(DB_HOST DB_USER DB_PASSWORD DB_NAME); $user_username = mysqli_real_escape_string($dbc trim($_POST[ username ])); $user_password = mysqli_real_escape_string($dbc trim($_POST[ password ])); if(!empty($user_username)&&!empty($user_password)) //MySql中的SHA()函数用于对字符串进行单向加密 $query = "SELECT user_id username FROM mismatch_user WHERE username = $user_username AND " "password = SHA( $user_password )"; $data = mysqli_query($dbc $query); //用用户名和密码进行查询 若查到的记录正好为一条 则设置SESSION和COOKIE 同时进行页面重定向 if(mysqli_num_rows($data)== ) $row = mysqli_fetch_array($data); $_SESSION[ user_id ]=$row[ user_id ]; $_SESSION[ username ]=$row[ username ]; setcookie( user_id $row[ user_id ] time()+( * * * )); setcookie( username $row[ username ] time()+( * * * )); $home_url = loged php ; header( Location: $home_url); else//若查到的记录不对 则设置错误信息 $error_msg = Sorry you must enter a valid username and password to log in ; else $error_msg = Sorry you must enter a valid username and password to log in ; else//如果用户已经登录 则直接跳转到已经登录页面 $home_url = loged php ; header( Location: $home_url); ?> <> <head> <title>Mismatch Log In</title> <link rel="stylesheet" type=text/css href="style css" /> </head> <body> <h >Msimatch Log In</h > <! 通过$_SESSION[ user_id ]进行判断 如果用户未登录 则显示登录表单 让用户输入用户名和密码 > <?php if(!isset($_SESSION[ user_id ])) echo <p > $error_msg </p> ; ?> <! $_SERVER[ PHP_SELF ]代表用户提交表单时 调用自身php文件 > <form method = "post" action="<?php echo $_SERVER[ PHP_SELF ];?>"> <fieldset> <legend>Log In</legend> <label for="username">Username:</label> <input type=text id="username" name=username value="<?php if(!empty($user_username)) echo $user_username; ?>" /> <br/> <label for="password">Password:</label> <input type=password id="password" name=password/> </fieldset> <input type=submit value="Log In" name=submit/> </form> <?php ?> </body> </>效果图
登入页面 loged php
复制代码 代码如下: <?php //使用会话内存储的变量值之前必须先开启会话 session_start(); //如果会话没有被设置 查看是否设置了cookie if(!isset($_SESSION[ user_id ])) if(isset($_COOKIE[ user_id ])&&isset($_COOKIE[ username ])) //用cookie给session赋值 $_SESSION[ user_id ]=$_COOKIE[ user_id ]; $_SESSION[ username ]=$_COOKIE[ username ]; //使用一个会话变量检查登录状态 if(isset($_SESSION[ username ])) echo You are Logged as $_SESSION[ username ] <br/> ; echo <a href="logOut php"> Log Out( $_SESSION[ username ] )</a> ; /**在已登录页面中 可以利用用户的session如$_SESSION[ username ] * $_SESSION[ user_id ]对数据库进行查询 可以做好多好多事情*/ ?>效果图 注销session与cookie页面 logOut php(注销后重定向到lonIn php)
复制代码 代码如下: cha138/Article/program/Java/JSP/201311/20469相关参考
先说session 对SESSION的争论好象一直没有停止过不过幺麽能理解SESSION的人应该占以上但还是讲讲别嫌老~ 有一些人赞
知识大全 ie与session丢失(新窗口cookie丢失)实测及解决方案
正如标题所言测试结果为如果cookie设置是延后定时失效而非进程级的那在open后也能看到所以针对此情况防止用户在使用ie内核出现登录状态丢失可以配合cookie来使用 今天在一个群中有
本篇文章是对php中session_set_save_handler函数的用法(mysql)进行了详细的分析介绍需要的朋友参考下 复制代码代码如下:<?php/*===========
InProc StateServer SQLServer 第一种是我们经常用的第中就是使用一个名为stateserver的机器用它的内存来存放其他机器的session状态其实我们还可以在sq
知识大全 几种清除cookie有效方法(js,asp,php)
几种清除cookie有效方法(网页特效asp教程php教程)网页特效设置cookie过期时间<scriptlanguage="网页特效"> functionsetcookie(nam
ASP操作cookies保存删除实例 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Respon
基于PHP创建Cookie数组的详解 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!本篇文章是对在P
知识大全 解析php通过cookies获取远程网页的指定代码
cha138/Article/program/PHP/201311/21255
解析PHP的session过期设置 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 网上很多人给出
PHPsession 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 本文将这些问题做一个简单的汇