标签:cakephp-2-0 php session cakephp
我有一个页面,其中有几个部分,其中包含从同一页面提交的表单.表单崩溃以节省空间,但如果提交时出现错误,我想有条件地保持它们打开.
在我的控制器中,我为每个表单设置了一个特定的“键”(请参阅下面的location_key),这样我就可以在各自的位置回显它们:
在控制器中:
$this->Session->setFlash('You missed something...', 'element_name', array('class'=>'error'), 'location_key');
在视图中:
$this->Session->flash('location_key')
我试图找出如何检查$this-> Session-> flash(‘location_key’)是否存在.如果我这样做它可以工作,但取消设置Flash消息:
if ( $this->Session->flash('location_key') ) // = TRUE
//Do something
$this->Session->flash('location_key') // = FALSE (because it just got called)
如何测试此Flash消息的存在而不会使其消失?
解决方法:
弄清楚了!这有效:
$this->Session->check('Message.location_key')
它返回true / false,具体取决于是否设置了任何此类Flash消息. – > read()执行相同的操作,但是如果存在则返回flash数据(任何且至关重要的是,它会离开会话var以便以后仍然可以回显).
标签:cakephp-2-0,php,session,cakephp 来源: https://codeday.me/bug/20190722/1507982.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。