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截取utf-8中文字符串乱码的解决方法
Mar 29 PHP
PHP设计模式之解释器模式的深入解析
Jun 13 PHP
探讨:如何通过stats命令分析Memcached的内部状态
Jun 14 PHP
PHP两种去掉数组重复值的方法比较
Jun 19 PHP
Windows下wamp php单元测试工具PHPUnit安装及生成日志文件配置方法
May 28 PHP
thinkPHP框架实现的简单计算器示例
Dec 07 PHP
Laravel中9个不经常用的小技巧汇总
Apr 16 PHP
Swoole4.4协程抢占式调度器详解
May 23 PHP
Smarty模板类内部原理实例分析
Jul 03 PHP
PHP中的自动加载操作实现方法详解
Aug 06 PHP
php连接sftp的作用以及实例代码
Sep 23 PHP
laravel框架创建授权策略实例分析
Nov 22 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
PHP实现基于文本的摩斯电码生成器
2016/01/11 PHP
DHTML Slide Show script图片轮换
2008/03/03 Javascript
js parsefloat parseint 转换函数
2010/01/21 Javascript
基于jquery的direction图片渐变动画效果
2010/05/24 Javascript
关于js注册事件的常用方法
2013/04/03 Javascript
jquery map方法使用示例
2014/04/23 Javascript
jQuery中slidedown与slideup方法用法示例
2016/09/16 Javascript
微信小程序 教程之WXSS
2016/10/18 Javascript
js数组与字符串常用方法总结
2017/01/13 Javascript
js 实现获取name 相同的页面元素并循环遍历的方法
2017/02/14 Javascript
原生javascript实现分页效果
2017/04/21 Javascript
vue router路由嵌套不显示问题的解决方法
2017/06/17 Javascript
理解Koa2中的async&amp;await的用法
2018/02/05 Javascript
5分钟快速掌握JS中var、let和const的异同
2018/09/19 Javascript
webpack配置proxyTable时pathRewrite无效的解决方法
2018/12/13 Javascript
Angular4.0动画操作实例详解
2019/05/10 Javascript
微信小程序表单验证插件WxValidate的二次封装功能(终极版)
2019/09/03 Javascript
nodejs使用Sequelize框架操作数据库的实现
2020/10/21 NodeJs
python脚本实现分析dns日志并对受访域名排行
2014/09/18 Python
Python单元测试框架unittest简明使用实例
2015/04/13 Python
全面了解python中的类,对象,方法,属性
2016/09/11 Python
python网络爬虫之如何伪装逃过反爬虫程序的方法
2017/11/23 Python
一篇文章了解Python中常见的序列化操作
2019/06/20 Python
Python绘图实现显示中文
2019/12/04 Python
使用canvas绘制贝塞尔曲线
2014/12/17 HTML / CSS
在网上学习全世界最好的课程:Coursera
2017/11/07 全球购物
关于递归的一道.NET面试题
2013/05/12 面试题
python+selenium小米商城红米K40手机自动抢购的示例代码
2021/03/24 Python
生物技术毕业生自荐信
2013/10/23 职场文书
乡下人家教学反思
2014/02/01 职场文书
会计自我鉴定
2014/02/04 职场文书
劳动竞赛活动方案
2014/02/20 职场文书
数控机床专业自荐信
2014/05/19 职场文书
让生命充满爱观后感
2015/06/08 职场文书
Java如何实现通过键盘输入一个数组
2022/02/15 Java/Android
十大公认最好看的动漫:《咒术回战》在榜,《钢之炼金术师》第一
2022/03/18 日漫