【问题标题】:Presenting Cookies on a PHP based site在基于 PHP 的网站上显示 Cookie
【发布时间】:2017-04-12 13:36:06
【问题描述】:

我的 PHP/HTML/Javascript 技能为 0,但我设法使用我修改过的默认模板创建了一个站点。

我想要完成的是让浏览器打印出 Cookie 名称和值(如果存在)。这是我目前正在进行的实验室练习。实验室本身不是您如何编程,而是您如何配置 Cookie 持久性,作为实验室的一部分,我希望学生能够轻松地在网页上显示 cookie。

之前的示例使用 HTML/JavaScript 和以下代码:

<script language="javascript">
function showCookieLink() {
var ele = document.getElementById("CookieLink");
ele.style.display = "block";
} 
</script>
<BODY bgColor="#0066FF" onload="javascript:if (document.cookie) showCookieLink()">
    <tr>     
       <td colspan="2" align="center" vAlign="top">      
        <font face=Arial>
          <div id="CookieLink" style="display: none;"><a href="index.html"     onclick="alert('Cookie = ' + document.cookie); return false;"><b><font color=#0000f0>Display Cookie</b></a></div>
        </font>
       </td>
    </tr>

前面的这个例子非常出色。它将打印出可点击的链接“显示 Cookie”(如果存在 cookie),点击后会弹出一个带有 Cookie 名称和值的新小窗口。

由于某种原因,这不再起作用。我尝试了几种不同的浏览器,但它们的行为都相同。用户启用了 JavaScript。

我一直在尝试不同类型的预格式化代码来解决这个问题,但都没有效果(或者我只是在编程/脚本方面很烂)。

你们能帮我解决这个问题吗?也许你可以打印出一个示例代码,我可以将它复制/粘贴到我当前的 php 代码中?

提前致谢!

【问题讨论】:

  • 大家好!在我搜索了更多信息后,我阅读了有关 HTTPOnly cookie 的信息。显然,我正在使用的产品已经自动将此功能添加到最新版本的 Cookie 持久性设置中,我没有注意到这一点。在持久性配置文件中禁用 HTTPOnly Cookie 时,代码会按预期工作。也许我们可以删除这个问题?

标签: javascript php html cookies


【解决方案1】:

根据this postdocument.cookies 只能在 Web 服务器中工作,而不仅仅是在从文件系统提供的 html 中工作。您的网址是否看起来像 http://localhost 或 file:///your/file/here.html?它应该看起来像 http:// 。

您的代码也存在一些问题。你不要关闭第二个 font 标签,&lt;script&gt; 应该在 &lt;head&gt;&lt;body&gt; 标签中,你的 &lt;body&gt; 标签不应该大写。查看here 的基本模板。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-08-10
    • 2015-01-08
    • 1970-01-01
    • 1970-01-01
    • 2012-09-15
    • 2023-03-29
    • 1970-01-01
    相关资源
    最近更新 更多