以前使用的方法还是太嫩了,最近才发现如果评论存在分页后就会导致评论无法进行评论,最开始使用网上搜索的代码,不知道什么原因,获取不到值。
下面就是网上搜的代码
<?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()”即可。
#免责声明#
本作品采用 知识共享署名-非商业性使用-禁止演绎 3.0 中国大陆许可协议进行许可授权。 即要求您在需要转载、引用本文全文或者部分时,请按照协议要求署名,并在保证不进行任何修改、续写等演绎形式,并不用于商业性项目的情况下使用。对于任何不尊重协议以及版权信息的个人,团队,媒体等任何组织形式,本站保留任何追究责任的手段和方式。如果本文有侵犯到您的权益,请直接向我们留言反馈。
签名:我最喜欢开发Bug了 来自: 重庆市 . 夸克浏览器

12
2024
09
typecho PJAX评论区自定义“Token”问题
以前使用的方法还是太嫩了,最近才发现如果评论存在分页后就会导致评论无法进行评论,最开始使用网上搜索的代码,不知道什么原因,获取不到值。...
点击复制推广网址:
下载海报:
喜欢的话就打赏支持一下


请文明反馈