onethink后台登录验证码不显示问题

来源:互联网 发布:淘宝如何招募分销商 编辑:程序博客网 时间:2024/04/30 23:37

把项目放到网站空间里去之后,后台登录时验证码不显示。(除了验证码问题,还有数据库配置问题,请自行去Common/conf/config.php和User/conf/config.php修改相关配置)。


多半是BOM头导致的。清除掉项目文件的BOM头即可。


清除BOM头的方法如下:复制下一段代码,放在服务器空间项目的根目录下,然后运行该PHP脚本,即可清除项目里所有文件的BOM头,验证码也就正常显示了。


<?php  if (isset($_GET['dir'])){   $basedir=$_GET['dir'];  }else{  $basedir = '.';  }  $auto = 1;  checkdir($basedir);  function checkdir($basedir){  if ($dh = opendir($basedir)) {    while (($file = readdir($dh)) !== false) {     if ($file != '.' && $file != '..'){      if (!is_dir($basedir."/".$file)) {       echo "filename: $basedir/$file ".checkBOM("$basedir/$file")." <br>";      }else{       $dirname = $basedir."/".$file;       checkdir($dirname);      }     }    }  closedir($dh);  }  }  function checkBOM ($filename) {  global $auto;  $contents = file_get_contents($filename);  $charset[1] = substr($contents, 0, 1);  $charset[2] = substr($contents, 1, 1);  $charset[3] = substr($contents, 2, 1);  if (ord($charset[1]) == 239 && ord($charset[2]) == 187 && ord($charset[3]) == 191) {    if ($auto == 1) {     $rest = substr($contents, 3);     rewrite ($filename, $rest);     return ("<font color=red>BOM found, automatically removed._<a href=http://www.hengidc.com>http://www.hengidc.com</a></font>");    } else {     return ("<font color=red>BOM found.</font>");    }  }  else return ("BOM Not Found.");  }  function rewrite ($filename, $data) {  $filenum = fopen($filename, "w");  flock($filenum, LOCK_EX);  fwrite($filenum, $data);  fclose($filenum);  }  ?>

0 0
原创粉丝点击