一般出現(xiàn) “抱歉,您的請求來路不正確或表單驗證串不符,無法提交” 這種問題的地方都是在提交表單的時候出現(xiàn)的。 因為discuz 在提交表單的時候 會進(jìn)行校驗,submitcheck()函數(shù),這個函數(shù)首先會校驗表單中的formhash,如果formhash出現(xiàn)問題,那么就會出現(xiàn)“抱歉,您的請求來路不正確或表單驗證串不符,無法提交” 這種問題。 submitcheck()這個函數(shù) 放在 source\class\helper\helper_form.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)){ } .雖然不安全,但是也是一種解決方法。 |