我正在尝试在Cookie存在时隐藏警告消息。
所以我有这段代码:
@foreach($alerts as $alert)
@if(empty(Cookie::get('alert_'.$alert->id)))
<!-- alert -->
<div class="alert alert-{{ $alert->type }} text-center">
<a href="#" onclick="createCookie('alert_{{ $alert->id }}','true','9999')" class="close" data-dismiss="alert" aria-label="close">×</a>
{{ $alert->message }}
</div>
@endif
@endforeach
但是当cookie有一个值时,它仍在显示。
当我在代码中使用isset()时,我得到错误连接重置。
我使用javascript生成cookie;
function createCookie(name,value,days) {
if (days) {
var date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000));
var expires = "; expires="+date.toGMTString();
}
else var expires = "";
document.cookie = name+"="+value+expires+"; path=/";
}
我做错了什么?
答案 0 :(得分:0)
检查是否存在Cookie
试试这个:
您还可以使用 请求
来获取Cookie要检索cookie的值,请使用以下语法:
$value = $request->cookie('nameOfCookie');
如果需要,添加实例 照亮\ Http \ Request
您可以检查cookie是否存在,如下所示
if (Request::hasCookie('alert_'.$alert->id))
{
// Success code here
} else {
// Failure code here
}
你也可以同样检查:
if(Cookie::get('alert_'.$alert->id) != null) { .. }
有用的文档:hasCookie方法。
希望这有用。