+ -
当前位置:首页 → 问答吧 → 去掉utf-8 BOM头,解决验证码无法显示问题

去掉utf-8 BOM头,解决验证码无法显示问题

时间:2011-07-20

来源:互联网

问题描述:很多朋友都比较纠结验证码无法显示的问题,检查代码也没有发现任何问题,到底是什么情况?

解决方案:
解决方法一:查看包含验证码函数的文件,建议用editplus或者ue,在文件编码中选择utf8或者是utf8去除BOM的项,然后保存。
解决方法二:网上有专门写的去除文件BOM头的程序,现在公布出来,可以放在项目根目录,然后运行。
  1. <?php
  2. if (isset($_GET['dir'])){ //config the basedir
  3.     $basedir=$_GET['dir'];
  4. }else{
  5.     $basedir = '.';
  6. }

  7. $auto = 1;

  8. checkdir($basedir);

  9. function checkdir($basedir){
  10.     if ($dh = opendir($basedir)) {
  11.         while (($file = readdir($dh)) !== false) {
  12.             if ($file != '.' && $file != '..'){
  13.                 if (!is_dir($basedir."/".$file)) {
  14.                     echo "filename: $basedir/$file".checkBOM("$basedir/$file")."<br>";
  15.                 }else{
  16.                     $dirname = $basedir."/".$file;
  17.                     checkdir($dirname);
  18.                 }
  19.             }
  20.         }
  21.     closedir($dh);
  22.     }
  23. }

  24. function checkBOM ($filename) {
  25.     global $auto;
  26.     $contents = file_get_contents($filename);
  27.     $charset[1] = substr($contents, 0, 1);
  28.     $charset[2] = substr($contents, 1, 1);
  29.     $charset[3] = substr($contents, 2, 1);
  30.     if (ord($charset[1]) == 239 && ord($charset[2]) == 187 &&ord($charset[3]) == 191) {
  31.         if ($auto == 1) {
  32.             $rest = substr($contents, 3);
  33.             rewrite ($filename, $rest);
  34.             return ("<font color=red>BOM found,automatically removed.</font>");
  35.         } else {
  36.             return ("<font color=red>BOM found.</font>");
  37.         }
  38.     }
  39.     else return ("BOM Not Found.");
  40. }

  41. function rewrite ($filename, $data) {
  42.     $filenum = fopen($filename, "w");
  43.     flock($filenum, LOCK_EX);
  44.     fwrite($filenum, $data);
  45.     fclose($filenum);
  46. }
  47. ?>
复制代码

作者: efcdk9090   发布时间: 2011-07-20

这个具体怎么操作啊,以什么文件名啊?还有代码复制过去,提示错误好多!是怎么回事啊 !

作者: zmxthink   发布时间: 2011-07-21

热门下载

更多