0

我正在寻找的是让一个 cookie 保存两个值,一个用于名称,一个用于他们访问的最后日期。它只需要绝对基本/简单,但我仍然无法弄清楚。

这是我的工作代码,但它只包含用户名,我已尝试通过尝试向此 cookie 添加值来使日期工作,使另一个 cookie 保存日期值,但它似乎对我不起作用。

/*function getCookie(c_name)
{
    var c_value = document.cookie;
    var c_start = c_value.indexOf(" " + c_name + "=");
    if (c_start == -1)
    {
        c_start = c_value.indexOf(c_name + "=");
    }
    if (c_start == -1)
    {
        c_value = null;
    }
    else
    {
        c_start = c_value.indexOf("=", c_start) + 1;
        var c_end = c_value.indexOf(";", c_start);
        if (c_end == -1)
        {
            c_end = c_value.length;
        }
        c_value = unescape(c_value.substring(c_start,c_end));
    }
    return c_value;
}

function setCookie(c_name,value,exdays)
{

    var exdate=new Date();
    exdate.setDate(exdate.getDate() + exdays);
    var c_value=escape(value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString());
    document.cookie=c_name + "=" + c_value;
}

function checkCookie()
{

    var username=getCookie("username");

    if (username!=null && username!="")
    {
        alert("Welcome again " + username + " you were last here on the "+ ledate);
    }
    else 
   {
        username=prompt("Please enter your name:","");


        if (username!=null && username!="" &&(username.substring(0,1)=='s'  ||username.substring(0,1)=='S'))
        {
             var ledate=new date();

             setCookie("username",username, 365);
             createCookie("date",ledate,365);
        }
        else
       {
             alert('error');
             location.reload();
       }
  }
}
4

1 回答 1

0

这是“SAMS 自学 JavaScript”的片段:

function createCookie(name, value, days, path, domain, secure) {
    if (days) {
        var date = new Date();
        date.setTime(date.getTime() + (days*24*60*60*1000));
        var expires = date.toGMTString();
    }
    else var expires = "";
    cookieString = name + "=" + escape (value);
    if (expires) cookieString += "; expires=" + expires;
    if (path) cookieString += "; path=" + escape (path);
    if (domain) cookieString += "; domain=" + escape (domain);
    if (secure) cookieString += "; secure";
    document.cookie = cookieString;
}

希望这可以帮助。

于 2013-05-06T21:53:50.793 回答