discuz【抱歉,您的请求来路不正确或表单验证串不符,无法提交】解决办法

discuz教程 强烈建议 2024-02-07 14:05 265 0

  ,在discuz提交表单的时候提示:抱歉,您的请求来路不正确或表单验证串不符,无法提交。导致数据无法提交。, ,原因分析:, ,因为discuz 在提交表单的时候 会进行校验,submitcheck()函数,这个函数首先会校验表单中的formhash,如果formhash出现问题,那么就会出现“抱歉,您的请求来路不正确或表单验证串不符,无法提交” 这种问题。, ,解决方法:, ,检查提交的表单中,是否有,如果没有手动添加上去。如果已经有了,查看下value的值是否为空,如果为空,在对应的PHP文件加入一段PHP代码:$formhash=FORMHASH;, ,PHP二次开发通过以上方法解决,看网上可能还有别的原因导致,可以参考下下面的解决办法:, ,方法一:请检查你本地的时间是否和服务器的时间一致。如果不一致请同步时间,更新缓存。, ,方法二:打开“source/class/helper/helper_form.php”, 然后把“$_GET[‘formhash’]==formhash() ”修改为“$_G[‘formhash’]==formhash() ”。, ,方法三:在提交的动作控制器中,去掉submitcheck()验证。 (此种方法需要对discuz的核心比较熟悉。)比如,在注册的时候,你需要找到“source/class/class_member.php”文件中register_ctl类中的on_register()方法,在if(!submitcheck(‘regsubmit’, 0, $seccodecheck, $secqaacheck)) { }处,可以把submitcheck()换成if(isset($_POST)){ } .虽然不安全,但是也是一种解决方法。, ,方法四:重装discuz。, ,注意:不建议采用方法三,本验证就是为了防止非法提交数据,取消验证就失去了这个意义。, 在discuz提交表单的时候提示:抱歉,您的请求来路不正确或表单验证串不符,无法提交。导致数据无法提交。 原因分析: 因为discuz 在提交表单的时候 会进行校验,submitcheck()函数,这个函数首先会校验表单中的formhash,如果formhash出现问题,那么就会出现“抱歉,您的请求来路不正确或表单验证串不符,无法提交” 这种问题。 解决方法: 检查提交的表单中,是否有,如果没有手动添加上去。如果已经有了,查看下value的值是否为空,如果为空,在对应的PHP文件加入一段PHP代码:$formhash=FORMHASH; PHP二次开发通过以上方法解决,看网上可能还有别的原因导致,可以参考下下面的解决办法: 方法一:请检查你本地的时间是否和服务器的时间一致。如果不一致请同步时间,更新缓存。 方法二:打开“source/class/helper/helper_form.php”, 然后把“$_GET[‘formhash’]==formhash() ”修改为“$_G[‘formhash’]==formhash() ”。 方法三:在提交的动作控制器中,去掉submitcheck()验证。 (此种方法需要对discuz的核心比较熟悉。)比如,在注册的时候,你需要找到“source/class/class_member.php”文件中register_ctl类中的on_register()方法,在if(!submitcheck(‘regsubmit’, 0, $seccodecheck, $secqaacheck)) { }处,可以把submitcheck()换成if(isset($_POST)){ } .虽然不安全,但是也是一种解决方法。 方法四:重装discuz。 注意:不建议采用方法三,本验证就是为了防止非法提交数据,取消验证就失去了这个意义。

  标签:discuz抱歉来路表单解决办法

  上一篇

  discuz允许游客表态的方法

  下一篇

  Discuz触屏手机版显示分类信息的修改方法



时间:(2024-02-07 14:05:11)
本站资源均来自互联网或会员发布,如果不小心侵犯了您的权益请与我们联系。我们将立即删除!谢谢!