Php Laravel会话数据未老化
我不完全确定标题是否正确,因为我还不知道我是如何解决这个问题的 我所拥有的:Php Laravel会话数据未老化,php,laravel,Php,Laravel,我不完全确定标题是否正确,因为我还不知道我是如何解决这个问题的 我所拥有的: 具有2个字段的简单模型 积垢控制器 在创建/编辑时,我处理数据并用一些信息重定向。信息通过以下两种方法之一传递: session()->flash(“键”、“信息”) redirect()->route(“route.name.here”)->带有(“key”、“info”) 我(在布局刀片文件的底部)添加了一行代码,以查看会话中存储的内容,希望能够了解出了什么问题 @dd(session()->al
- 具有2个字段的简单模型
- 积垢控制器
- 在创建/编辑时,我处理数据并用一些信息重定向。信息通过以下两种方法之一传递:
session()->flash(“键”、“信息”)
redirect()->route(“route.name.here”)->带有(“key”、“info”)
@dd(session()->all(),session("_flash"),session("key"))
我的实际问题是什么?我一次又一次地得到同样的信息
- 创建新实例并对用户进行闪存确认
- valdiation返回错误消息
- 清除缓存
- 删除会话文件(重新创建会话文件)
- 重新启动apache
- 重新启动服务器(类似于raspberry pi)
- PHP:7.3.0alpha4
- 拉拉维尔:5.6.29
- 会话处理:文件
- 操作系统:Ubuntu 18.04.1 LTS
\u令牌
键,并且值会随着每次页面加载而变化。在我看来,会话处理有一个问题,但我不知道在哪里,因为它只有部分问题(写一些新的东西显然是有效的,但改变似乎遇到了问题)
Edit2:
(创建、编辑)
中使用重定向
,则最好将与
一起用于flash会话消息,如下例所示:
return redirect('route.name')->with('status', 'your message here');
有关函数如何工作的更多信息,请查看
接下来,在blade模板中,您应该在该会话变量上创建一个测试(如果该变量存在或不存在),然后显示它。下面的代码将显示如何使用会话laravel Facade实现这一点:
@if(Session::has('key'))
{{ Session::get('key') }}
@endif
如果您对session facade感兴趣,您可以找到如何使用session facade。我尝试了
session()->flash(…)
,因为我丢失了信息(在视图文件中重定向后)。我的测试看起来和你的完全一样(除了我使用了helper函数而不是facade-AFAIK,它没有什么区别)。我的问题不在于没有“闪现”数据,而是数据在闪现后没有被删除(我说的不是2次而是x次,这意味着10次或100次或更多)。我使用的是带('key','info')的redirect()->route('route.name',['param'=>$value])->
因为我找不到任何可以直接将其传递给重定向函数的提示。向用户显示数据不是我的问题。我的问题是,我有你链接的代码(用于显示flash数据),它会显示在随后的每个页面加载上,而不仅仅是下一个页面加载上。你能分享一下你的创建和编辑方法吗?我猜你在这些方法中做错了。这是我之前说过的:创建表单是索引页面的一部分(右上角),这是一个(确保权限没有问题)我的Web服务器运行的用户与我用于ssh的用户相同。没有任何更改:(尝试使用redis作为会话驱动程序:仍然没有更改。因此…没有权限问题。必须在代码中的某个位置。我不知道它可能在哪里。