【问题标题】:response data to $_SESSION?对 $_SESSION 的响应数据?
【发布时间】:2013-07-17 09:13:54
【问题描述】:

我每 30 秒将一些数据推送到我的 javascript 数组中。这些数据来自 ajax 响应。我想在我访问的下一页上使用此数组,而不会丢失其内容。

setInterval(function () {
      $.ajax({
                url: "../controller/controller_session.php",
                type: 'POST',
                data: {data to send},
                dataType: "json",
                success: function(data) {

                     ARRAY.push(JSON.stringify(data))
        },30000)
    } 

如何使用 $_SESSION 将这些数据传输到网站上的其他页面,以及如何将其取回并在我的 javascript 中重复使用。

【问题讨论】:

  • 也许你也可以使用jstorage.info
  • 我已经在使用会话存储。但我将使用它作为后备。

标签: php javascript session


【解决方案1】:

Javascript 无法读取您存储在服务器上的会话数据,并且 Javascript 仅操作您拥有的实际数据。您必须对另一个 PHP 页面进行 AJAX 调用以获取 $_SESSION,然后将数据发送回 AJAX 成功函数。

在一个PHP文件上有

session_start();
if(isset($_SESSION['value'])){
    $session = $_SESSION['value'];
}

echo isset($session) ? $session : '';

然后您在 AJAX 调用中调用该页面并检查该页面是否返回了某些内容。

编辑:

success: function(data){
    $('.div').html(data);
}

【讨论】:

  • 能不能给个小sn-p
  • 我如何使用这个 $_session 数据回来。我想用 innerHTML 显示它。
  • 我不会打扰datatype:json,在AJAX()函数的成功中,它会在成功函数的参数中。
  • 谢谢,明白了。我将向我的php页面发送请求->设置会话变量->每30秒推送一次数据->然后回显$_SESSION并将其作为响应在我的 javascript 中...正确吗?
  • 你可以设置也可以获取,只需在PHP页面处理代码,然后在AJAX调用中将你想要的返回成功函数。
【解决方案2】:

在返回之前在 controller_session.php 页面上设置 SESSION 变量。将结果作为字符串保存在 SESSION 变量中。

在下一页使用 SESSION 值(我猜它是一个 JSON 字符串)解析它并在您的 JavaScript 代码中使用它。

【讨论】:

    猜你喜欢
    • 2011-01-01
    • 2020-10-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-23
    • 2013-04-14
    • 1970-01-01
    相关资源
    最近更新 更多