session,cookie共用,session丢失之问题,1周了。
cookie只保存了一个自动登录。
session,是存着所在导般栏名子,(中英名系统)。共有近30个。如:
- PHP code
<!---ecms Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->$session['userInfo']='用户中心';
所有session都在head.php中,被所有文件来引用。
部分代码如下:
- PHP code
<!---ecms 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']=$r<strong>*本文来@源gao@daima#com搞(%代@#码@网2</strong><pre>搞代gaodaima码
Show[‘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
<!---ecms 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的原因