Javascript 登录不正常

Javascript 登录不正常,javascript,php,session,redirect,Javascript,Php,Session,Redirect,我有一个登录脚本,在成功登录后,我设置会话变量并将用户重定向到主页,我使用以下脚本进行重定向 echo "<script type=\"text/javascript\">function redirectWindow() {setTimeout(function() {window.location.href=\"http://homepage.com\";}, 3000);}window.onload = redirectWindow();</script>"

我有一个登录脚本,在成功登录后,我设置会话变量并将用户重定向到主页,我使用以下脚本进行重定向

    echo "<script type=\"text/javascript\">function redirectWindow()
{setTimeout(function() {window.location.href=\"http://homepage.com\";},
3000);}window.onload = redirectWindow();</script>";
echo”函数重定向窗口()
{setTimeout(函数(){window.location.href=\”http://homepage.com\";},
3000);}window.onload=redirectWindow();“;
但是,会话变量$\u session不是第一次设置的,其值在主页上不可用。但是,如果我尝试再次登录,$\u session值在重定向后在主页上可用

    echo "<script type=\"text/javascript\">function redirectWindow()
{setTimeout(function() {window.location.href=\"http://homepage.com\";},
3000);}window.onload = redirectWindow();</script>";

如果删除重定向,则不存在此问题。重定向脚本是否存在任何问题,这可能会导致首次加载旧的缓存页面。

您似乎正在做的是,在提交登录表单后,加载带有少量Javascript的页面,然后客户端重定向到新页面

与其尝试使用Javascript重定向,不如使用PHP:

header( 'Location: http://www.example.com/new_page.php' ) ;

通过这种方式,表单一提交就立即进行重定向。

好的,我发现了问题,因为我正在重定向到“htp://homepage.com”,并且打开的初始页面是“htp://www.homepage.com”,因此我认为会话变量不可用。谢谢大家的建议。

为什么要使用
?不能使用
标题('Location:…)用于重定向?如果用户没有启用js会发生什么?需要记住的一点。@aurbano我不能使用标题,因为我需要在重定向之前显示成功的登录消息。@ScottMcGready在这种情况下,用户可以单击home链接,这只是自动重定向过程。您实际如何设置
$\u会话
vars?我们可以看到代码Please我不能使用标题,因为我需要在重定向之前显示我回显的成功登录消息。将来,在您的问题中这样说会很有帮助。为我们节省了用您已经尝试/考虑过的内容回答问题的时间。在任何情况下,您都可以在会话中传递登录消息-新页面可以检查并在新页面上回显它。您可以延迟使用标题,请尝试此。。。标题(“刷新:5;url=example.com”);