好的,所以我想在表单提交后在$ _COOKIES中存储一些用户选项。
我的代码是这样的:
$reason=array_values(array_filter($_POST['reasontext']));
$str=implode('|',$reason);
if(!isset($_COOKIE['reason'])){
setcookie('reason',$str,time()+86400*30*12);
}elseif(isset($_COOKIE['reason2'])){
setcookie("reason", "", time()-3600);
setcookie("reason",$_COOKIE['reason2'],time()+86400*30*12);
setcookie('reason2', "", time()-3600);
}else{
setcookie("reason", "", time()-3600);
setcookie('reason',$str,time()+86400*30*12);
}
$reason=array_values(array_filter($_POST['reasontext']));
$str=implode('|',$reason);
if(!isset($_COOKIE['reason'])){
setcookie('reason',$str,time()+86400*30*12);
}elseif(isset($_COOKIE['reason2'])){
setcookie("reason", "", time()-3600);
setcookie("reason",$_COOKIE['reason2'],time()+86400*30*12);
setcookie('reason2', "", time()-3600);
}else{
setcookie("reason", "", time()-3600);
setcookie('reason',$str,time()+86400*30*12);
}
基本上,对于一个让我们说的数组:'1'=>'Test1','2'=>'Test2','3'=>'Test3'
选择工具应该为每个用户提供3个不同的选项,具体取决于用户提交的内容为$ _POST ['reasontext']。
嗯,这不是,每个用户都可以清楚地看到另一个用户提交并存储在cookie中的应该是个人的内容。
我想要的是每个cookie'原因'存储在每个用户计算机上并从那里加载不同的用户自定义选项。
任何提示?
提前感谢提醒:)
答案 0 :(得分:1)
如果您想要将cookie设为私有,您应该:
如果您希望将数据存储在用户的计算机上而不是传输到服务器,那么各种存储接口之一对此有用(localStorage,sessionStorage等)。但是,您可以在JavaScript中设置它而不是POST的结果,并且该机制的缺点是数据将特定于设置它的浏览器,而使用cookie解决方案,您可能会恢复用户登录时的用户设置。