以前使用的方法还是太嫩了,最近才发现如果评论存在分页后就会导致评论无法进行评论,最开始使用网上搜索的代码,不知道什么原因,获取不到值。
下面就是网上搜的代码
<?php $security = $this->widget('Widget_Security'); ?>
<input type="hidden" name="_" value="<?php echo $security->getToken($this->request->getReferer()) ?>">
通过单独查看“$this->request->getReferer()”这段代码发现获取的值一直为null,这就导致获取到的“Token”和程序内部生成的不一样,通过查看“security”这个类发现其中也提供了其他获取参数和url的方法。
下面就是博主使用的代码
<input name="_" type="hidden" id="comment_" value="<?php echo Helper::security()->getToken(str_replace(array('?_pjax=%23wrap','?_pjax=%23pjax-load', '&_pjax=%23wrap'), '', $this->request->getUrlPrefix().$this->request->getRequestUri()));?>"/>
上面代码中有些替换函数非必须代码,你可以找到这段代码“$this->request->getReferer()”替换成“$this->request->getUrlPrefix().$this->request->getRequestUri()”即可。
签名:我最喜欢开发Bug了 来自: 重庆市 . 夸克浏览器
喜欢的话就打赏支持一下


请文明反馈