首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CakePHP Cookies无法从JavaScript中读取

问CakePHP Cookies无法从JavaScript中读取
EN

Stack Overflow用户
提问于 2012-09-17 08:23:38
回答 2查看 875关注 0票数 3

我正在使用来自CakePHP的setcookie()在/cake/contoller_name/method/parameter this page中创建一个cookie。但我看不懂JavaScript的饼干。但是,当上面的cookie从/cake/contoller_name/method this page设置时,我可以从JavaScript读取这个cookie。

因此我意识到我们不能用参数从页面中设置和更改cookie。在服务器端,在Cake中,我们可以读取这些cookie,但不能从JavaScript读取。注意: params是以“蛋糕样式”传递的,而不是在常规查询中传递的;例如:/cake/controller/param1/param2。示例代码

案例1: URL: /蛋糕/薪资/薪资页面: payroll_controller.php

代码语言:javascript
复制
function salary(){ 
    setcookie('TEST_COOKIE','TEST_DATA',0); 
}

案例2: URL: /蛋糕/工资/工资/14页: payroll_controller.php

代码语言:javascript
复制
function salary(){ 
    setcookie('TEST_COOKIE','TEST_DATA',0); 
} 

Javascript代码:

代码语言:javascript
复制
function getCookie(c_name) {
    var i, x, y, ARRcookies = document.cookie.split(";");
    for (i = 0; i < ARRcookies.length; i++) {
        x = ARRcookies[i].substr(0, ARRcookies[i].indexOf("="));
        y = ARRcookies[i].substr(ARRcookies[i].indexOf("=") + 1);
        x = x.replace(/^\s+|\s+$/g, "");
        if (x == c_name) {
            return unescape(y);
        }
    }
}

alert(getCookie('TEST_COOKIE'));

我可以用JS读取案例1中的cookie,但不能从案例2读取cookie。我如何从CakePHP在任何页面上设置cookie并从JavaScript读取这些cookie?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-09-18 08:58:53

试试下面的代码来设置cookie

代码语言:javascript
复制
setcookie('TEST_COOKIE','your data',0,"/"); 
票数 1
EN

Stack Overflow用户

发布于 2012-09-17 12:04:03

您必须遵循以下三个步骤:

  1. 使用CakePHP Cookie组件。让框架执行艰难的任务:http://book.cakephp.org/2.0/en/core-libraries/components/cookie.html
  2. 阅读这篇关于JavaScript和cookies的文章。您还将在这里找到用于删除/创建/读取cookies的3个函数:http://www.quirksmode.org/js/cookies.html
  3. 如果您使用火狐,安装Firebug并使用FireCookie扩展:http://www.softwareishard.com/blog/firecookie/

最新的Firebug已经安装了FireCookie。

在FireCookie中,您可以检查cookie是否真的存在,并查看它们的名称和值。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12455518

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档