gpt4 book ai didi

PHP session 变量不接受重新分配

转载 作者:行者123 更新时间:2023-11-29 13:13:39 24 4
gpt4 key购买 nike

我正在使用 PHP 开发一个注册系统,但遇到了问题。用户将按预期插入到数据库中。接下来, token (只是随机值的哈希值)与用户 ID 一起附加到 URL,并且该 URL 通过电子邮件发送到用户的电子邮件,以便他们可以验证它。

例如,用户 128 具有以下验证 URL:localhost/fPASS/?page=verify_email&id=128&token=4a629a13871cf6d354984abdfd990783

请注意,网址中的用户 ID 正确标注为 128。如果我访问该链接,脚本会正确地将 ID 和 token 与数据库进行比较,并将 email_verified 更改为 1。

问题是,如果我尝试注册另一个用户,则会使用用户 128 而不是 129 的 id 和 token 重新生成 url...除非我清除 cookie。现在,url 使用 session 变量来确定 id 和 token ,因此它们似乎没有正确更新。但是,如果没有错误(实际上没有错误),注册函数总是会重新分配变量:

// if there are no errors, redirect to success page
if (!isset($errors))
{
// send the email address on to the next page in case the verification email needs to be re-sent
$_SESSION['email'] = $safe['email'];
$_SESSION['account_id'] = $account_id;
$_SESSION['token'] = $token;
header('Location: http://localhost/fPASS/?page=reg_success');
}

不过,重新分配似乎并未生效。什么可能导致原始分配“卡在” session 变量中?

最佳答案

请检查您的 php.ini 中是否包含 session_start();然后,尝试回显您的 session 变量或赋值变量*在重定向之前*。这将帮助您轻松调试。

关于PHP session 变量不接受重新分配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21770578/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com