繁体   English   中英

如何在不刷新页面的情况下捕获javascript中的php会话变量?

[英]How can I capture php session variables in javascript without page refresh?

我有一个index.php ,在那里我做session_start()等。登录,我发送一个Ajax请求receiver.php ,在这里我设置会话变量等,并得到一个Ajax响应回来。

现在, 仅当刷新具有以下代码的index.php页面 ,我才能完美捕获php会话变量:

jsSessionUserId = <?php     
    if (isset($_SESSION['userId'])) { //LoggedIn:
        echo json_encode($_SESSION['userId']); 
    } else { //  Not logged in.
        // some code here
    }
?>;

我真正想要的是将其放入函数中,然后在收到成功的ajax响应时调用此函数(因此无需刷新index.php页面)。 它不起作用。 我怀疑php不能在javascript函数内部正常工作。 感谢您的帮助。

混在一起是个坏主意。 像php和javascript。 目前最适合您的解决方案-收到成功的登录响应后,覆盖您的javascript变量。

$.post("receiver.php", formData, function(response){ // login callback
  if(response.UserId){ // return user id if login is successful
    jsSessionUserId = response.UserId; // overwrite old variable
  }
}, "json");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM