读写cookie

时间:2011-02-11 06:10:33

标签: php javascript cookies phpjs

我有一个链接到PHP页面的javascript文件,该页面有一个值,需要在提交表单并刷新页面时保存。

是否有一种简单的方法来设置类似于PHP中的方法的cookie。

setcookie("MovementDate", $MovementDate, time()+3600);  

我发现的一切都非常复杂,似乎无法开始工作。

目前还在阅读设置Cookie。从我的搜索中我想出了这种方法,但它无法正常工作。

function readCookie(name) {
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for(var i=0;i < ca.length;i++) {
    var c = ca[i];
    while (c.charAt(0)==' ') c = c.substring(1,c.length);
    if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
}

}

var movement = readCookie(MovementDate);
document.write(movement);

2 个答案:

答案 0 :(得分:2)

调用readCookie时,参数需要是一个字符串。将您的倒数第二行更改为:

var movement = readCookie("MovementDate");

答案 1 :(得分:2)

如果您已经习惯使用PHP,则可以使用PHPjs

要进行设置,请使用setcookie功能。

要阅读,请使用runkit_superglobals功能。这将使您使用与PHP完全相同的方法访问$_COOKIE超全局。

示例:

// Setting
// setcookie uses seconds but the JS Date object returns milliseconds,
// so we need to divide by 1000
setcookie("foo", "bar", (new Date().getTime() / 1000) + 3600);

// Reading
runkit_superglobals();    
alert($_COOKIE["foo"]); // alerts "bar"