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 操作数组(合并,拆分,追加,查找,删除等)
Jul 20 PHP
PHP对表单提交特殊字符的过滤和处理方法汇总
Feb 18 PHP
PHP实例分享判断客户端是否使用代理服务器及其匿名级别
Jun 04 PHP
php+mysql数据库实现无限分类的方法
Dec 12 PHP
Thinkphp中的curd应用实用要点
Jan 04 PHP
php绘制一条直线的方法
Jan 24 PHP
PHP 双链表(SplDoublyLinkedList)简介和使用实例
May 12 PHP
Zend Framework框架实现类似Google搜索分页效果
Nov 25 PHP
Laravel框架实现超简单的分页效果示例
Feb 08 PHP
PHP下载大文件失败并限制下载速度的实例代码
May 10 PHP
PHP利用curl发送HTTP请求的实例代码
Jul 09 PHP
PHP实现页面静态化深入讲解
Mar 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 5.6版本中编写一个PHP扩展的简单示例
2015/01/20 PHP
PHP统计数值数组中出现频率最多的10个数字的方法
2015/04/20 PHP
php正则表达式验证(邮件地址、Url地址、电话号码、邮政编码)
2016/03/14 PHP
php实现等比例压缩图片
2018/07/26 PHP
JavaScript高级程序设计(第3版)学习笔记 概述
2012/10/11 Javascript
Jquery实现的角色左右选择特效
2014/05/21 Javascript
js实现键盘操作实现div的移动或改变的原理及代码
2014/06/23 Javascript
jQuery中wrapAll()方法用法实例
2015/01/16 Javascript
jQuery实现可用于博客的动态滑动菜单
2015/03/09 Javascript
Nodejs如何复制文件
2016/03/09 NodeJs
基于HTML+CSS+JS实现增加删除修改tab导航特效代码
2016/08/05 Javascript
Vue项目中引入外部文件的方法(css、js、less)
2017/07/24 Javascript
Angular.js实现获取验证码倒计时60秒按钮的简单方法
2017/10/18 Javascript
常用的9个JavaScript图表库详解
2017/12/19 Javascript
JS实现关键词高亮显示正则匹配
2018/06/22 Javascript
微信小程序实现展示评分结果功能
2019/02/15 Javascript
ligerUI的ligerDialog关闭刷新的方法
2019/09/27 Javascript
vue中v-for循环选中点击的元素并对该元素添加样式操作
2020/07/17 Javascript
为Python的web框架编写前端模版的教程
2015/04/30 Python
深入理解python中的浅拷贝和深拷贝
2016/05/30 Python
Python使用cookielib模块操作cookie的实例教程
2016/07/12 Python
Python爬虫:url中带字典列表参数的编码转换方法
2019/08/21 Python
Django框架中间件定义与使用方法案例分析
2019/11/28 Python
通过HTML5规范搞定i、em、b、strong元素的区别
2017/03/04 HTML / CSS
简述安装Slackware Linux系统的过程
2012/01/12 面试题
经典优秀个人求职自荐信格式
2013/09/25 职场文书
简短证婚人证婚词
2014/01/09 职场文书
汽车机修工岗位职责
2014/03/06 职场文书
销售内勤岗位职责
2014/04/15 职场文书
2014年计生标语
2014/06/23 职场文书
党的群众路线教育实践活动对照检查材料
2014/09/22 职场文书
初中成绩单评语
2014/12/29 职场文书
三孔导游词
2015/02/05 职场文书
Pytorch反向传播中的细节-计算梯度时的默认累加操作
2021/06/05 Python
python对文档中元素删除,替换操作
2022/04/02 Python
win10如何快速切换窗口 win10切换窗口快捷键分享
2022/07/23 数码科技