【问题标题】:How to view session details in php using firebug?如何使用 firebug 在 php 中查看会话详细信息?
【发布时间】:2012-01-30 05:55:30
【问题描述】:

我试图弄清楚我该怎么做:

console.log('<?php print_r($_SESSION); ?>'); 

在控制台中查看结果。

console.log('<?php echo serialize($_SESSION); ?>');

也不起作用。有没有办法让我在 firebug 中回显会话信息或在 chrome 中检查元素以进行测试?

【问题讨论】:

  • 你在脚本标签之间使用这段代码吗?
  • 不工作不能作为对您所面临错误的正确描述。您不能只是将任何内容作为 javascript“字符串”扔掉,然后期望它能够正常工作。想象一下,序列化字符串中有一个',它只会让它停止工作。

标签: php session console firebug firephp


【解决方案1】:

你可以试试这个:

<script>
    console.log(<?php echo json_encode($_SESSION, JSON_HEX_TAG); ?>);
</script>

不需要引号。另见Firebug and Logging


[编辑,2014 年 5 月] 更新了代码以防止 XSS 攻击。 总是如果您嵌入 HTML,则将JSON_HEX_TAG 传递给json_encode,否则攻击者可以通过让您编码如下字符串将代码注入 DOM:

</script><script>alert('Hello!');

【讨论】:

    【解决方案2】:

    使用 fire bug 无法查看会话详细信息。

    【讨论】:

    • 实际上,这个答案本质上是非常正确的,不值得被否决,因为真的不可能只使用萤火虫查看会话数据 - 你的服务器端应该准备数据。在这种情况下,这个问题毫无意义,因为您可以准备任何东西:来自会话、数据库、第 3 方服务等的数据
    • 在 Chrome 中,它可以在“应用程序”选项卡下轻松访问。 Firebug 还缺少这个吗?我知道我可以在服务器端查看它,但在 Chrome 中查看会更容易。
    猜你喜欢
    • 2018-03-09
    • 2019-09-15
    • 2020-10-15
    • 1970-01-01
    • 2012-07-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多