ThinkPHP打开验证码页面显示乱码的解决方法


Posted in PHP onDecember 18, 2014

本文实例讲述了ThinkPHP打开验证码页面显示乱码的解决方法。分享给大家供大家参考。具体分析如下:

在用thinkphp开发的时候,有时会出现验证码乱码的问题,解决方法是把如下这个文件放在根目录,访问后就可以解决了,具体的PHP代码如下:

<?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.</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);   

}   

?>

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

PHP 相关文章推荐
用PHP编程开发“虚拟域名”系统
Oct 09 PHP
通过对服务器端特性的配置加强php的安全
Oct 09 PHP
PHP伪造referer实例代码
Sep 20 PHP
PHP不用递归实现无限分级的例子分享
Apr 18 PHP
2014最热门的24个php类库汇总
Dec 18 PHP
详解WordPress中用于更新和获取用户选项数据的PHP函数
Mar 08 PHP
php  PATH_SEPARATOR判断当前服务器系统类型实例
Oct 28 PHP
php实现的pdo公共类定义与用法示例
Jul 19 PHP
弹出模态框modal的实现方法及实例
Sep 19 PHP
PHP+MariaDB数据库操作基本技巧备忘总结
May 21 PHP
PHP命名空间定义与用法实例分析
Aug 14 PHP
Laravel 不同生产环境服务器的判断实践
Oct 15 PHP
ThinkPHP中使用ajax接收json数据的方法
Dec 18 #PHP
2014最热门的24个php类库汇总
Dec 18 #PHP
ThinkPHP通过AJAX返回JSON的两种实现方法
Dec 18 #PHP
ThinkPHP内置jsonRPC的缺陷分析
Dec 18 #PHP
yiic命令时提示“php.exe”不是内部或外部命令的解决方法
Dec 18 #PHP
php生成二维码时出现中文乱码的解决方法
Dec 18 #PHP
php判断文件上传类型及过滤不安全数据的方法
Dec 17 #PHP
You might like
Http 1.1 Etag 与 Last-Modified提高php效率
2008/01/10 PHP
在PHP中使用redis
2013/11/04 PHP
ThinkPHP查询中的魔术方法简述
2014/06/25 PHP
Yii控制器中filter过滤器用法分析
2016/07/15 PHP
Javascript !!的作用
2008/12/04 Javascript
Javascript 按位取反运算符 (~)
2014/02/04 Javascript
JQuery+Ajax无刷新分页的实例代码
2014/02/08 Javascript
基于jquery实现的自动补全功能
2015/03/12 Javascript
JS设置cookie、读取cookie、删除cookie
2015/04/17 Javascript
jquery实现表单输入时提示文字滑动向上效果
2015/08/10 Javascript
jQuery满屏焦点图左右滚动特效代码分享
2015/09/07 Javascript
JavaScript位置与大小(1)之正确理解和运用与尺寸大小相关的DOM属性
2015/12/26 Javascript
javascript类型系统——undefined和null全面了解
2016/07/13 Javascript
jQuery实现移动端手机商城购物车功能
2016/09/24 Javascript
vue基于Vue2.0和高德地图的地图组件实例
2017/04/28 Javascript
mui back 返回刷新页面的实例
2017/12/06 Javascript
GOJS+VUE实现流程图效果
2018/12/01 Javascript
Node.js动手撸一个静态资源服务器的方法
2019/03/09 Javascript
Smartour 让网页导览变得更简单(推荐)
2019/07/19 Javascript
javascript 对象 与 prototype 原型用法实例分析
2019/11/11 Javascript
原生JavaScript实现贪吃蛇游戏
2020/11/04 Javascript
Python3.7基于hashlib和Crypto实现加签验签功能(实例代码)
2019/12/04 Python
Python数据正态性检验实现过程
2020/04/18 Python
通俗讲解python 装饰器
2020/09/07 Python
使用spring mvc+localResizeIMG实现HTML5端图片压缩上传的功能
2016/12/16 HTML / CSS
We Fashion荷兰:一家国际时装公司
2018/04/18 全球购物
Happy Socks英国官网:购买五颜六色的袜子
2020/11/03 全球购物
求职者怎样写自荐信
2014/04/13 职场文书
支部鉴定材料
2014/06/02 职场文书
个人委托书范本汇总
2014/10/01 职场文书
单位工作证明
2014/10/07 职场文书
2015年度信用社工作总结
2015/05/04 职场文书
2016年三八节红领巾广播稿
2015/12/17 职场文书
PHP中国际化的字符串排序和比较对象详解
2021/08/23 PHP
深入浅析Django MTV模式
2021/09/04 Python
电脑无法安装Windows 11怎么办?无法安装Win11的解决方法
2021/11/21 数码科技