我在一个真正的pickel:
我正在制作一个登录脚本,由于某种原因,$_SESSION 变量没有从我的登录检查中通过页面发送。
我已经用 pre PHP Ver 5.2.12 对此进行了测试,并且可以正常工作。以前用过这种方法。但是我现在使用这种方法的网站是 PHP Ver 5.2.12
所以我注意到的两个版本之间有两个不同之处,它们是:
在旧版本中,
session.bug_compat_42 On On AND 在新 = session.bug_compat_42 Off Off
还
旧版本
session.use_trans_sid 0 0 和新 session.use_trans_sid 1 1
session.save_path 的路径在每个版本中也不同(这有关系吗??)这是我登录页面的代码:
登录页面
<?php
session_start();
$var_user = $_SESSION['US'];
//echo $var_user;//ouputs nothing =0
//if not logged in
if(!isset($_SESSION['US'])) {
header ('Location:index.php');
die();
}else if(isset($_SESSION['US'])){
include('connect.php');
//rest of script goes here
}
以及我在 if 语句中检查登录详细信息的页面代码
从登录页面顶部检查变量的页面
<?php
session_start();
$var_pass =$_REQUEST['PW'] ;
$var_user =$_REQUEST['US'] ;
稍后在页面中
$_SESSION["US"]= $var_user;
//echo "login success";
header ('Location:loggedin.php');
这绝对是我的头脑,可能只是我没有意识到的一个小错误,任何想法。
提前致谢。