日期:2014-05-16  浏览次数:20482 次

php js 操作cookie 问题
JScript code
function setCookie(val) {
    /*delCookie('jmlb');
    var date = new Date();
    date.setTime(date.getTime() + 30 * 3600 * 1000);
    document.cookie = "jmlb=" + escape(val) + "; expire=" + date.toGMTString();*/
    document.cookie = "jmlb=" + escape(val);
    window.location = document.location.href;
}

// 语言切换
$(function() {
    $(".yy dd").click(function(){
        var lang = $(this).text();
        if(lang.indexOf('English') != -1){
            setCookie('en');
        }else if(lang.indexOf('Ruso') != -1){
            setCookie('ru');
        }else if(lang.indexOf('русс') != -1){
            setCookie('es');
        }
    });
});



 $lang = isset($_COOKIE["jmlb"]) ? $_COOKIE['jmlb'] : $setting['lang'];

如果在当前页面切换语言 得到的 $lang 是 setCookie(x); x值
如果点击其他页面后,在切换语言,$lang 就乱套了

用firebug 看到的
怎么有2个jmlb了


------解决方案--------------------
在写新cookie前把旧的设置成过期就行了