检查网站根目录中的cookie

时间:2012-04-06 18:55:01

标签: javascript php cookies

你好我现在有这个代码检查是否存在cookie,它会很好用,但你去了一个子页面,因为网站的标题部分对所有页面都是通用的。

我目前正在使用此代码检查for cookie -

if(! isset( $_COOKIE['AVS'] ) )
        {
            header('Location: http://www.mydomain.com/splash/');
        }

这就是我设置我的cookie的方式

<script type="text/javascript">
            function createCookie() {
                var name = "AVS";
                var value = "AVL";
                var expires = 24*60*60*1000;
                document.cookie = name+"="+value+expires+"; path=/";
            }
</script>

即使浏览器关闭,我也确实在设置cookie后24小时内保持cookie有问题?

3 个答案:

答案 0 :(得分:0)

这取决于你如何设置cookie。

查看setcookie

的路径和域参数

答案 1 :(得分:0)

我想通了,我完全使用PHP而不是任何javascript,它似乎工作......我使用的代码也是。

    if(! isset( $_COOKIE['AVS'] ) )
    {
        $value = 'AVL';
        setcookie("AVS", $value, time()+43200);
        header('Location: http://www.mydomain.com/splash/');
    }

答案 2 :(得分:0)

如果您想在JavaScript中创建和检查cookie,那么我可以帮助您解决我在3-4个月前编写的一些代码。

如果你想要这个,那你就去这里

在HTML页面中按一个按钮,并在其onclick函数上调用JavaScript函数“checkCookie()”。

<input type="button" value="Click Me" onclick="checkCookie()" /> 

现在转到head部分并在那里定义checkCookie()方法。

function checkCookie() {
        var username = getCookie("username");
        if (username != null && username != "") {
            alert("Welcome again " + username);
        }
        else {
            username = prompt("Please enter your name:", "");
            if (username != null && username != "") {
                setCookie("username", username, 365);
            }
        }
    }

现在,如果您的浏览器已将您输入的名称保存在cookie的文本框中,则上述方法将显示一条警告,上面写着“再次欢迎”您输入的名称。'“

让我们定义getCookie()方法。

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;
}

现在定义setCookie()方法。

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;
}

对于整个提示,您可以访问我在此处撰写的文章Check and Create Cookie in Javascript