❶ php 如何使用cookie安全的保存登录状态sessionid
同样还是将用户的认证信息保证在一个cookie中,具体如下:
1.cookie名:uid。推荐进行加密,比如MD5('站点名称'+userid)。
2.cookie值:登录名|有效时间Expires|hash值。hash值可以由"登录名+有效时间Expires+用户密码(加密后的)的前几位+salt",salt是保证在服务器端站点配置文件中的随机数。
这样子设计有以下几个优点:
1.即使数据库被盗了,盗用者还是无法登录到系统,因为组成cookie值的salt是保证在服务器站点配置文件中而非数据库。
2.如果账户被盗了,用户修改密码,可以使盗用者的cookie值无效。
3.如果服务器端的数据库被盗了,通过修改salt值可以使所有用户的cookie值无效,迫使用户重新登录系统。
4.有效时间Expires可以设置为当前时间+过去时间(比如2天),这样可以保证每次登录的cookie值都不一样,防止盗用者窥探到自己的cookie值后作为后门,长期登录。
❷ php用户登陆状态查询和登陆状态保存应该怎么做我知道有session和cookie可以用来保存,
php页面:
$pwd=$_POST['pwd'];
$name=$_POST['name'];
$info=mysql_query('select * from user where pwd='.$pwd.' and name='.$name.' limit 1 ');
$info=mysql_fetch_array($info,MYSQL_ASSOC);
if(empty($info)){
$_COOKIE['user_name']=$info['name'];
$_COOKIE['user_id']=$info['id'];
}
大概流程,登陆成功了存cookie
取的时候就随便了 直接用就是了
❸ php 登陆后参数的保存
cookie和session都可以用
可以自定义登陆标志
如用session
可以在你验证登陆的地方+
$_SESSION['login']=1;
在其他需要验证的页面先判断
if ($_SESSION['login']=1){
......//操作
}else{
......//失败
}
如果你需要更多的信息可以都写在session[]里
做为全局变量 在需要的地方调用就可以了
建议用MD5加密
❹ php保存cookie用户登陆的问题
这个最好不要用cookie来保存
保存用户登录状态可以用session<?phpsesion.start();?>页面前加这个启动session保存session的方式如:session[“UserId”]="userid1";
❺ php 网站登录后保持登录状态
用cookie或者session
❻ php中 用的是thinkphp模板 怎么样让用户保持在登录状态用session
用session记录最后一次操作,如果用户有操作则修改一下时间。在thinkphp中,你可以写一个BaseAction,让你所有的Action继承它,在它里面写一个方法用于记录你最后一次操作的时间,超过了那个时间久跳转到登录页面。
❼ 在php中怎么实现在登录页A登录用session保存用户名在主页B显示!当关闭页面或者注销登陆才销毁session!
关闭页面是无法销毁session的,
首先session是有一个保存期限的,默认好像是多少分钟来着忘记了,是可以自己设置,
比如session是30分钟,你在15分钟后访问网站,服务器检测到你是活动的,就给你session重置30分钟,如果你在31分钟访问那么 超时了,服务器在30分钟时已经把你以前的给丢弃了,所以你是一个新的用户,表现的现象就是有些网页你登陆后 直接点击右上角X 掉后马上在打开浏览器输入 刚刚登陆的网站你会发现你还是登陆状态..
在有比如你登陆了一个网页,长时间没有浏览过这个网页那么,在你下次点击这个网站链接时候,就发现让你重新登陆..
你直接关闭浏览器 一般情况下服务器是不会马上知道你已经离开的,
如果网站有注销按钮,你点击后就相当于告诉服务器你离开了,请把我的账号给注销了..
❽ 登陆成功js传值给php保存用户信息怎么做
在ajax的php登陆判断中,成功则写入cookie或者session一个登陆状态的字段,返回到js的sucess是判断 登陆成功则跳转到 用户首页,否则就不跳转提示登陆错误。
然后在登陆成功的页面中 每次都从cookie或者session中提取出保存的字段 判断登陆的用户id和登陆的状态就行了
❾ php使用session和加密的cookie保存登录状态,如何判断登录状态失效时间
function saveUserInfo(){
if($("#rmbUser").attr("checked")=="checked"){
var userName = $("#wsc-username").val();
var passWord = $("#wsc-password").val();
$.cookie("rmbUser","true",{expires:7});
$.cookie("userName",userName,{expires:7});
$.cookie("passWord", passWord, { expires: 7 }); // 存储一个带7天期限的 cookie
}else{
$.cookie("rmbUser","false",{expires:-1});
$.cookie("username","",{expires:-1});
$.cookie("passWord","", { expires: -1 });
}
}
❿ php中如何记录状态比如 登录状态,cookie不行
setcookie 定义cookie
session['name']="admin";
设置 Cookie 的生存期:
<?php
session_start();
// 保存一天
$lifeTime = 24 * 3600;
setcookie(session_name(), session_id(), time() + $lifeTime, "/");
?>
下面是session
其实 Session 还提供了一个函数 session_set_cookie_params(); 来设置 Session 的生存期的,该函数必须在 session_start() 函数调用之前调用:
<?php
// 保存一天
$lifeTime = 24 * 3600;
session_set_cookie_params($lifeTime);
session_start();
$_SESSION["admin"] = true;
?>
如果客户端使用 IE 6.0 , session_set_cookie_params(); 函数设置 Cookie 会有些问题,所以我们还是手动调用 setcookie 函数来创建 cookie。