我的会话不起作用


My SESSION won't work

注册页面:

$_SESSION['namex']=$_POST['username'];
$_SESSION['passx']=$_POST['pass'];
$_SESSION['confirmpassx']=$_POST['confirmpass'];
$_SESSION['emailx']=$_POST['email'];
$_SESSION['confirmemailx']=$_POST['email2'];
$_SESSION['keyx']=$_POST['byond'];

索引页

$namex=$_POST['username'];
$passx=$_POST['pass'];
$pass2x=$_POST['confirmpass'];
$emailx=$_POST['email'];
$email2x=$_POST['email2'];
$ByondKeyx=$_POST['byond'];
str_replace($namex,$_SESSION['namex'],$namex);
str_replace($passx,$_SESSION['passx'],$passx);
str_replace($pass2x,$_SESSION['confirmpassx'],$pass2x);
str_replace($emailx,$_SESSION['emailx'],$emailx);
str_replace($email2x,$_SESSION['confirmemailx'],$email2x);
str_replace($keyx,$_SESSION['keyx'],$keyx);

好的,所以这些代码应该做的是注册页面正在做它的事情(我认为),索引页面是一个页面,如果出现问题,例如使用的用户名或密码或用户名被滥用,那么索引页面就会进入并制作另一个表单与注册页面具有相同数据。 抱歉,如果难以阅读/理解。如果你想看看我的网站,看看我的意思,那么这里是链接:http://snyp.freeoda.com感谢您的阅读,请提供帮助。

session_start()添加到每个文件的顶部并在每个str_replace呼叫前面添加$_SESSION['varname']。(或者你想分配给什么,不太清楚)

你在代码的开头有session_start();函数调用吗?
注意:没有换行符,前面不允许有空格。

首先,这个答案假设您在两个脚本的顶部都有session_start(),并且在显示页面时没有可见的错误/警告(使用 error_reporting(-1)ini_set('display_errors', 'On') .

您的注册页面将已发布的字段存储在会话中:

$_SESSION['namex']=$_POST['username'];

这都很好;假设您重定向回索引页。然后,索引页可以直接从会话中获取值:

$namex = $_SESSION['namex'];

假设索引页上的表单使用 $namex 来构建表单。