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与php MySQL 之间的关系
Jul 17 PHP
php 向访客和爬虫显示不同的内容
Nov 09 PHP
PHP得到mssql的存储过程的输出参数功能实现
Nov 23 PHP
php数组去重的函数代码
Feb 03 PHP
CI框架中zip类应用示例
Jun 17 PHP
ThinkPHP3.1新特性之对分组支持的改进与完善概述
Jun 19 PHP
表单提交错误后返回内容消失问题的解决方法(PHP网站)
Oct 20 PHP
thinkphp中字符截取函数msubstr()用法分析
Jan 09 PHP
ThinkPHP连接Oracle数据库
Apr 22 PHP
PHP中in_array的隐式转换的解决方法
Mar 06 PHP
phpStorm+XDebug+chrome 配置详解
Apr 01 PHP
php使用Swoole实现毫秒级定时任务的方法
Sep 04 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 define的第二个参数使用方法
2013/11/04 PHP
php内存缓存实现方法
2015/01/24 PHP
php上传大文件设置方法
2016/04/14 PHP
php blowfish加密解密算法
2016/07/02 PHP
Extjs grid添加一个图片状态或者按钮的方法
2014/04/03 Javascript
用javascript关闭本窗口技巧小结
2014/09/05 Javascript
兼容主流浏览器的jQuery+CSS 实现遮罩层的简单代码
2014/10/14 Javascript
javascript实现根据身份证号读取相关信息
2014/12/17 Javascript
AJAX实现瀑布流触发分页与分页触发瀑布流的方法
2016/05/23 Javascript
深入理解JS中的Function.prototype.bind()方法
2016/10/11 Javascript
jQuery UI制作选项卡(tabs)
2016/12/13 Javascript
基于jQuery实现简单人工智能聊天室
2017/02/10 Javascript
使用 Vue 绑定单个或多个 Class 名的实例代码
2018/01/08 Javascript
详解ES6通过WeakMap解决内存泄漏问题
2018/03/09 Javascript
vue.js使用v-if实现显示与隐藏功能示例
2018/07/06 Javascript
React router动态加载组件之适配器模式的应用详解
2018/09/12 Javascript
JS跨浏览器解析XML应用过程详解
2020/10/16 Javascript
Python3实现的腾讯微博自动发帖小工具
2013/11/11 Python
python魔法方法-属性转换和类的表示详解
2016/07/22 Python
详解用Python为直方图绘制拟合曲线的两种方法
2019/08/21 Python
使用 PyTorch 实现 MLP 并在 MNIST 数据集上验证方式
2020/01/08 Python
matplotlib 曲线图 和 折线图 plt.plot()实例
2020/04/17 Python
python利用os模块编写文件复制功能——copy()函数用法
2020/07/13 Python
巴西宠物店在线:Geração Pet
2017/05/31 全球购物
zooplus意大利:在线宠物商店
2019/08/07 全球购物
德国苹果商店:MacTrade
2020/05/18 全球购物
Fanatics官网:运动服装、球衣、运动装备
2020/10/12 全球购物
Java面试题:为什么要用Java
2012/05/11 面试题
人力资源专业推荐信
2013/11/29 职场文书
工地门卫岗位职责
2013/12/30 职场文书
2014年班组长工作总结
2014/11/20 职场文书
西岭雪山导游词
2015/02/06 职场文书
学困生转化工作总结
2015/08/13 职场文书
2019年XX公司的晨会制度及流程!
2019/07/23 职场文书
手把手教你使用TensorFlow2实现RNN
2021/07/15 Python
Jedis操作Redis实现模拟验证码发送功能
2021/09/25 Redis