PHPCMS正常情况下的后台验证码是不推荐去除的,除非在特殊情况下,比如网站被入侵,代码清理不干净导致验证码不正常,这个时候可以临时去除,登录上去再说,反正验证码你随时都可以恢复。首先我们要做的是先把整个PHPCMS数据备份下来到本地硬盘,以免修改出错可以快速恢复。
第一步、phpcmsmodulesadminindex.php 在这个路径找到第32行的下面这段红色代码:
$code = isset($_POST['code']) && trim($_POST['code']) ? trim($_POST['code']) : showmessage(L('input_code'), HTTP_REFERER);
if ($_SESSION['code'] != strtolower($code)) {
$_SESSION['code'] = '';
showmessage(L('code_error'), HTTP_REFERER);
}
对比下代码确认直接删除或者使用<!--去除的代码-->这样隔开注释掉。
第二步、phpcmsmodulesadmin emplateslogin.tpl.php 在38行找到这段代码:
<label><?php echo L('security_code')?>:</label>
<input name="code" type="text" class="ipt ipt_reg" onfocus="document.getElementById('yzm').style.display='block'" />
<div id="yzm"
class="yzm"><?php echo form::checkcode('code_img')?><br
/><a
href="javascript:document.getElementById('code_img').src='<?php echo
SITE_PROTOCOL.SITE_URL.WEB_PATH;?>api.php?op=checkcode&m=admin&c=index&a=checkcode&time='+Math.random();void(0);"><?php
echo L('click_change_validate')?></a></div>
特别注意,绝大部分的人不细心就很难发现,所以我这里可疑加深第一行的代码,一定要看清楚,去除的开头是<label><?php echo L('security_code')?>:</label>的源代码。
最后效果图是这样的:
以上方法是绝对可以去除验证码的,如果你没有成功,那就没有细心去做。