cookie的设置,获取,取消

<!DOCTYPE>
<html>
<head>
<meta http-equiv=Content-Type content="text/html; charset=utf-8"/>
<script type="text/javascript">
    window.onload = function() {
        var oText = document.getElementById("text");
        var oButton = document.getElementById("button");
        addHandler(oButton, "click", function() {
            setCookie(oText.id, oText.value, 7);
            console.log(getCookie(oText.id));
            removeCookie(oText.id);
            console.log(getCookie(oText.id));
        })
    }
    function setCookie(name, text, day) {
        var oDate = new Date();
        oDate.setDate(oDate.getDate() + day);
        document.cookie = name + '=' + text + '; expires =' + oDate;
    }
    function getCookie(name) {
        var arr = document.cookie.split(";");
        for(var i = 0; i < arr.length; i++) {
            var arr1 = arr[i].split("=");
            if(arr1[0] == name) {
                return arr1[1];
            }
        }
    }
    function removeCookie(name) {
        setCookie(name, "", -1);
    }
    function addHandler(element, type, handler) {
        if(element.addEventListener) {
            element.addEventListener(type, handler, false);
        }else if (element.attachEvent) {
            element.attachEvent("on" + type, handler);
        }else {
            element["on" + type] = handler;
        }
    }
</script>
</head>
<body>
    <input type="text" id="text" />
    <input type="button" id="button" value="提交"/>
</body>
</html>

需要运行在服务器上。

通过http返回cookie:

<?php
	//header("Set-Cookie: text=aaa;expires=".gmstrftime("%A, %d-%b-%Y %H:%M:%S GMT",time()+9600));
    //header("Set-Cookie: text=aaa;expires=".gmstrftime("%A, %d-%b-%Y %H:%M:%S GMT",time()+9600).";HTTPOnly");
    //HTTPOnly: 只允许http访问,不允许JS操作
    //setcookie("text", 'www.sunphp.org', time()+3600*24);

    //设置时间
    data_default_timezone_set("Asia/Chongqing");
    setcookie("text", 'www.sunphp.org', time()+3600*24, "/test");
    //重新设置即为更新
    setcookie("text", 'www.sunphp.org更新', time()+3600*24, "/test");
    //删除
    setcookie("text", '', time()-200, "/test");
    //遍历删除
    foreach($_COOKIE as $key=>$val) {
    	 setcookie($key, '', time()-200);
    }
    //设置了/test则在test文件夹下的test1,test2中的index.html均有效,返之不成立。
    /*setcookie(name,value,expire,path,domain,secure);
    name    必需。规定 cookie 的名称。
    value   必需。规定 cookie 的值。
    expire  可选。规定 cookie 的有效期。
    path    可选。规定 cookie 的服务器路径。
    domain  可选。规定 cookie 的域名。
    secure  可选。规定是否通过安全的 HTTPS 连接来传输 cookie。true与false
    true为JS不可用,false为JS可用
    */
    echo "asaa";


?>

  

  

原文地址:https://www.cnblogs.com/pcd12321/p/5227451.html