通过js置的Cookie通过PHP获取的办法

 所属分类:php教程

 浏览:617次-  评论: 0次-  更新时间:2020-10-27
描述:本文主要讲解如何通过php获取js代码设置的cookie内容。

PHP代码:

<?php
// 读取JavaScript设置的cookie
header("Content-type: text/html; charset=utf-8");
if(isset($_COOKIE["param"])){
 echo $_COOKIE["param"];
}
?>

js代码:

<script>
function setCookie(c_name, value, expiredays) {                   
    var exdate = new Date();
    exdate.setDate(exdate.getDate() + expiredays);
    document.cookie = c_name + "=" + escape(value) + ";
    expires=" + exdate.toGMTString() + ";
    path=/";
} 
// 读取cookie   
function getCookie(c_name) {    
    if (document.cookie.length > 0)     {
        c_start = document.cookie.indexOf(c_name + "=")           
        if (c_start != -1){ 
            c_start = c_start + c_name.length + 1 
            c_end = document.cookie.indexOf(";", c_start) 
            if (c_end == -1)   
                c_end = document.cookie.length   
                return unescape(document.cookie.substring(c_start, c_end))   
            } 
        } 
    return "" 
}

// 检查cookie
function checkCookie(c_name) {     
    username = getCookie(c_name);     
    console.log(username);     
    if (username != null && username != "")     
    { return true; }     
    else     
    { return false;  }
}

// 清除cookie 
function clearCookie(name) {     
    setCookie(name, "", -1); 
}


需要注意几点:

1、php用自身函数读取php设置的cookie,没有任何障碍,无需解码处理。

2、js采用cookie.js方法读取js设置的cookie,没有任何障碍,无需解码处理。

3、js读取php的中文cookie,建议使用 decodeURIComponent (escape("...")) 函数处理,否则可能读取不正常

4、php读取js的中文cookie 建议做 unescape 处理,否则可能出现乱码。

积分说明:注册即送10金币,每日签到可获得更多金币,成为VIP会员可免金币下载! 充值积分充值会员更多说明»

讨论这个素材(0)回答他人问题或分享使用心得奖励金币

〒_〒 居然一个评论都没有……

表情  文明上网,理性发言!