我正在使用JS,因此请设置以我们提供的课程命名的Cookie。因为它们包含特殊字符和空格,所以我使用encodeURIComponent()对它们进行编码,就像这样(参见最后2行):
$("button[id='ajouter_panier_"+value+"']").click(function(){
$( "div[id='"+value+"panier']").css( "display", "block" );
vars++;
summembre = parseFloat(summembre)+ parseFloat(prixm);
sumnonmembre = parseFloat(sumnonmembre)+ parseFloat(prixnm);
$("#nb_"+value+"_cours").text("Qte: "+vars);
$("#total-commande-nm").text(sumnonmembre.toFixed(2));
$("#total-commande").text(summembre.toFixed(2));
titre = encodeURIComponent(titre);
setCookie(titre,vars, 1);
});
然后使用以下编码存储它们:
Initiation%20au%20cadenassage
然后在我想要获取cookie的页面上,我需要使用PHP来完成它。我在我的标题中使用rawurlencode(),然后在我的broswer中查找cookie,如下所示:
$title = rawurlencode($title);
$counterMessage = $_COOKIE[$title];
当我回复来自新rawurlencoded标题的值时,它会向我显示我在Chrome设置中的Cookie存储中设置的相同内容:
Initiation%20au%20cadenassage
那么,当我在$ _COOKIE []中输入的值与我在cookies存储中看到的值相同时,为什么我无法获取cookie值?
我知道我有良好的道路和一切,因为没有特殊字符和没有空格的课程标题被访问,我可以毫无问题地看到它们的价值。
谢谢。
答案 0 :(得分:0)
由于您已经在使用JQuery,我建议您使用$.cookie
设置并获取Cookie,参考here。
您可以尝试使用$.cookie('test', titre)
设置编码字符串,并使用$.cookie('test')