书画联盟-古玩百科_琴棋书画_珠宝玉石_文玩瓷杂_收藏艺术_鉴赏交流

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 844|回复: 0

您的请求来路不正确或表单验证串不符

[复制链接]
发表于 2020-4-21 12:32:18 | 显示全部楼层 |阅读模式
一般出现 “抱歉,您的请求来路不正确或表单验证串不符,无法提交” 这种问题的地方都是在提交表单的时候出现的。
因为discuz 在提交表单的时候 会进行校验,submitcheck()函数,这个函数首先会校验表单中的formhash,如果formhash出现问题,那么就会出现“抱歉,您的请求来路不正确或表单验证串不符,无法提交” 这种问题。
submitcheck()这个函数 放在 source\class\helper\helper_form.php 中。





工具/原料
  • 已安装discuz程序的系统


  • 出现了“抱歉,您的请求来路不正确或表单验证串不符,无法提交” 这种问题




方法/步骤
  • 1

    方法一:
    请检查你本地的时间是否和服务器的时间一致。如果不一致请同步时间,更新缓存。


  • 2

    方法二:

    请检查你提交的表单中,是否有<input type="hidden" name="formhash" value="{$formhash}">,如果没有请手动添加上去。(这种情况一般会在IE6上面出现,其他浏览器正常。)


  • 3

    方法三:推荐使用
    打开“source\class\helper\helper_form.php”, 然后把“$_GET['formhash'] == formhash() ”修改为“$_G['formhash'] == formhash() ”。

  • 4

    方法五:

    在提交的动作控制器中,去掉submitcheck()验证。 (此种方法需要对discuz的核心比较熟悉。)比如,在注册的时候,你需要找到“source\class\class_member.php”文件中register_ctl类中的on_register()方法,在if(!submitcheck('regsubmit', 0, $seccodecheck, $secqaacheck)) { }处,可以把submitcheck()换成if(isset($_POST)){ } .虽然不安全,但是也是一种解决方法。


  • 5

    方法六:

    重装disucz,打齐补丁。





回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|古玩百科_古玩|文化艺术|收藏品|收藏家黄页 ( 青ICP备06001001号 )

GMT+8, 2024-5-2 15:29 , Processed in 0.030769 second(s), 4 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表