首页 > 后端开发 > php教程 > session,cookie共用,session丢失之有关问题,1周了

session,cookie共用,session丢失之有关问题,1周了

WBOY
发布: 2016-06-13 10:17:53
原创
777 人浏览过

session,cookie共用,session丢失之问题,1周了。
cookie只保存了一个自动登录。
session,是存着所在导般栏名子,(中英名系统)。共有近30个。如:

PHP code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->$session['userInfo']='用户中心';
登录后复制

所有session都在head.php中,被所有文件来引用。
部分代码如下:
PHP code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--><?php if(($_POST['admin_user']!="")&&($_POST['admin_pass']!="")){    require_once("image/conn.php");        $number=(get_magic_quotes_gpc())?trim($_POST['admin_user']):addslashes(trim($_POST['admin_user']));    $pass=(get_magic_quotes_gpc())?trim($_POST['admin_pass']):addslashes(trim($_POST['admin_pass']));        $q=$m->query("select authority from setting_user where number='".$number."' and password='".$pass."'");    $r=$q->fetch_array(MYSQLI_USE_RESULT);    (int)$authority=$r['authority'];//权限分配        if($q->num_rows>0){        //分配显示名        $qShow=$m->query("select * from setting_display where user='".$number."' order by id desc limit 1");        $rShow=$qShow->fetch_array(MYSQLI_USE_RESULT);{            $_SESSION['receiving']=$rShow['receiving']?$rShow['receiving']:NULL;            $_SESSION['po']=$rShow['po']?$rShow['po']:NULL;                        // 很多session 在这里                        if($_POST['remeberMe']){            setcookie("u",$number,time()+3600);            setcookie("p",$pass,time()+3600);            }        }        $_SESSION['auth']=$number;        switch($authority){            case 1:echo "<script>window.location.href='main.php?o=show';</script>";$_SESSION['admin']=1;break;            default:echo "<script>window.location.href='main.php?o=show';</script>";$_SESSION['admin']=NULL;break;            }    }    else{            echo "<script language="javascript">alert('用户名或密码输入错误!');</script>";         }}?>
登录后复制



每个页面,都加了,
PHP code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--><?php session_set_cookie_params('3600');session_start(); ?>
登录后复制


这些session是从数据里取的,但是为什么,使用不到80秒,就会出现乱的名子,由汉字(正确)变化,数字与字母的。


------解决方案--------------------
出现乱的名子?

页面的编码是否一致?
------解决方案--------------------
中间是不是改动了session或者cookies的值。是不是session_set_cookie_params的原因
相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板