Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/263.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 正在检查网站根目录中的cookie_Javascript_Php_Cookies - Fatal编程技术网

Javascript 正在检查网站根目录中的cookie

Javascript 正在检查网站根目录中的cookie,javascript,php,cookies,Javascript,Php,Cookies,您好,我目前有这个代码检查是否存在cookie,它工作得非常好,直到您转到一个子页面,因为网站的标题部分对所有页面都是通用的 我当前正在使用此代码检查cookie- if(! isset( $_COOKIE['AVS'] ) ) { header('Location: http://www.mydomain.com/splash/'); } 这就是我设置cookie的方式 <script type="text/javascript"

您好,我目前有这个代码检查是否存在cookie,它工作得非常好,直到您转到一个子页面,因为网站的标题部分对所有页面都是通用的

我当前正在使用此代码检查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>

函数createCookie(){
var name=“AVS”;
var value=“AVL”;
var expires=24*60*60*1000;
document.cookie=name+“=”+value+expires+“path=/”;
}

事实上,即使浏览器关闭,我也无法在设置cookie后将cookie保留24小时?

这取决于您如何设置cookie


看看路径和

的域参数,我想出来了,我完全使用了PHP,而不是任何javascript,它似乎可以工作。下面是我使用的代码

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

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

如果你想要这个,你就到这里来

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

<input type="button" value="Click Me" onclick="checkCookie()" /> 
现在,如果您的浏览器已将您在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()方法


关于整个技巧,您可以访问我在这里写的文章,

也许您可以使用带www和不带www的域
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;
}