平方X

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2802|回复: 1

解决 discuz“抱歉,您的请求来路不正确或表单验证串不符...

[复制链接]

414

主题

709

帖子

3602

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3602
QQ
发表于 2014-12-26 19:38:23 | 显示全部楼层 |阅读模式
解决 discuz“抱歉,您的请求来路不正确或表单验证串不符,无法提交”转自http://www.tidows.com/?p=255
还没测试是否有用。

一般出现 “抱歉,您的请求来路不正确或表单验证串不符,无法提交” 这种问题的地方都是在提交表单的时候出现的。

因为discuz 在提交表单的时候 会进行校验,submitcheck()函数,这个函数首先会校验表单中的formhash,如果formhash出现问题,那么就会出现“抱歉,您的请求来路不正确或表单验证串不符,无法提交” 这种问题。

submitcheck()这个函数 放在 source\class\helper\helper_form.php 中。

解决方法:

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

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

第三种方法:
打开“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)){ } .虽然不安全,但是也是一种解决方法。

第五种方法:
重装disucz….



我是平方X~
回复

使用道具 举报

XX匿名  发表于 2017-1-27 04:19:59
Precio De Cialis En Espana Kamagra Naturel En Ligne  cialis Effetti Cialis E Cocaina Buy Prednisolone Eu Fast Shipping Viagra Online Keflex What Is  Cheap Viagra Compare Generic Viagra In Canada Tadalis Sx Soft Effet
回复 支持 反对

使用道具

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

本版积分规则

QQ|小黑屋|手机版|Archiver|平方X ( 冀ICP备14018164号 )

GMT+8, 2024-4-20 10:40 , Processed in 0.119781 second(s), 25 queries .

技术支持:Powered by Discuz!X3.4  © 2001-2013 Comsenz Inc.

版权所有:Copyright © 2014-2018 平方X www.pingfangx.com All rights reserved.

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