thinkphp中session和cookie无效的解决方法


Posted in PHP onDecember 19, 2014

本文实例讲述了thinkphp中session和cookie无效的解决方法。分享给大家供大家参考。具体分析如下:

问题描述:

在本地调试时session和cookie是用没有问题的,我是用session保存当前登录账户的信息,上传服务器之后,发现跳转之后session不复存在,为什么呢?在当前页面输出session是存在的.

遇到这个问题三天了,因为是自学没有老师可以请教,身边也没有几个是弄PHP的,所以真的是很悲剧,于是乎百度,而百度上很多人都是屁话连天,没有什么可以解决问题的,经过三天的修改终于找到了根源,原来是因为绝大多数支持thinkphp的服务器是linux系统,而我们的编程基本都还是windows,这样就会出现bom头这个问题,而PHP对于bom头不能解析,而直接拿下来了,导致session和cookie不能用.

解决方法:

什么是bom头?在utf-8编码文件中BOM在文件头部,占用三个字节,用来标示该文件属于utf-8编码,现在已经有很多软件识别bom头,但是还有些不能识别bom头,比如PHP就不能识别bom头,这也是用记事本编辑utf-8编码后执行就会出错的原因了.

去掉bom头的办法,简单的是下面两种:

1、editplus去BOM头的方法

编辑器调整为UTF8编码格式后,保存的文件前面会多出一串隐藏的字符(也即是BOM),用于编辑器识别这个文件是否是以UTF8编码.

运行Editplus,点击工具,选择首选项,选中文件,UTF-8标识选择 总是删除签名,然后对PHP文件编辑和保存后的PHP文件就是不带BOM的了.

2、ultraedit去除bom头办法

打开文件后,另存为选项的编码格式里选择(utf-8 无bom头),确定就ok了,怎么样,去掉bom头很简单吧.

再来一段议论utf8的BOM信息的,BOM是指php文件本身的存储方式为带BOM的UTF-8,普通页面的中文乱码方式一般不是由这个原因导致的.

header("Content-type: text/html; charset=utf-8");

这句话控制html输出页面的编码方式,BOM只有在WINDOWS下采用“记事本”存储为UTF-8时才会有,这个可以用WINHEX把开始的2个字节删掉.

在dreamweaver里面编码设置里面可以设置是否带BOM,一般只要php输出的不是图片(GDI Stream),BOM都不会导致问题,GDI Stream如果开头有了额外的 字符就会显示为 红叉.

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

PHP 相关文章推荐
不用GD库生成当前时间的PNG格式图象的程序
Oct 09 PHP
在PHP3中实现SESSION的功能(三)
Oct 09 PHP
实现php加速的eAccelerator dll支持文件打包下载
Sep 30 PHP
ThinkPHP 防止表单重复提交的方法
Aug 08 PHP
php中CI操作多个数据库的代码
Jul 05 PHP
php的数组与字符串的转换函数整理汇总
Jul 18 PHP
Yii调试SQL的常用方法
Jul 09 PHP
phpstorm配置Xdebug进行调试PHP教程
Dec 01 PHP
php+xml编程之xpath的应用实例
Jan 24 PHP
PHP实现的迷你漂流瓶
Jul 29 PHP
php将服务端的文件读出来显示在web页面实例
Oct 31 PHP
php使用array_chunk函数将一个数组分割成多个数组
Dec 05 PHP
thinkphp3.0输出重复两次的解决方法
Dec 19 #PHP
thinkphp3.2.2实现生成多张缩略图的方法
Dec 19 #PHP
9个经典的PHP代码片段分享
Dec 18 #PHP
PHP程序员必须清楚的问题汇总
Dec 18 #PHP
8个PHP程序员常用的功能汇总
Dec 18 #PHP
ThinkPHP打开验证码页面显示乱码的解决方法
Dec 18 #PHP
ThinkPHP中使用ajax接收json数据的方法
Dec 18 #PHP
You might like
修改php.ini实现Mysql导入数据库文件最大限制的修改方法
2007/12/11 PHP
php画图实例
2014/11/05 PHP
jQuery Tips 为AJAX回调函数传递额外参数的方法
2010/12/28 Javascript
50个比较实用jQuery代码段
2011/09/18 Javascript
Jquery 监视按键,按下回车键触发某方法的实现代码
2014/05/11 Javascript
js的延迟执行问题分析
2014/06/23 Javascript
jQuery对象与DOM对象之间的相互转换
2015/03/03 Javascript
QQ登录背景闪动效果附效果演示源码下载
2015/09/22 Javascript
js获取时间精确到秒(年月日)
2016/03/16 Javascript
星期几的不同脚本写法(推荐)
2016/06/01 Javascript
基于jQuery实现顶部导航栏功能
2016/12/27 Javascript
JavaScript使用正则表达式获取全部分组内容的方法示例
2017/01/17 Javascript
JavaScript基于面向对象实现的猜拳游戏
2018/01/03 Javascript
AngularJS使用ui-route实现多层嵌套路由的示例
2018/01/10 Javascript
js经验分享 JavaScript反调试技巧
2018/03/10 Javascript
layer.open关闭父窗口 以及调用父页面的方法
2018/08/17 Javascript
vue使用echarts画组织结构图
2021/02/06 Vue.js
Python的Bottle框架中实现最基本的get和post的方法的教程
2015/04/30 Python
Python入门_条件控制(详解)
2017/05/16 Python
Python实现的文本简单可逆加密算法示例
2017/05/18 Python
python测试mysql写入性能完整实例
2018/01/18 Python
django Admin文档生成器使用详解
2019/07/22 Python
python 使用cx-freeze打包程序的实现
2020/03/14 Python
Python爬虫自动化爬取b站实时弹幕实例方法
2021/01/26 Python
HTML5新特性之type=file文件上传功能
2018/02/02 HTML / CSS
美国首屈一指的礼品篮供应商:GiftTree
2018/01/06 全球购物
德国高品质男装及配饰商城:Cultizm(Raw Denim原色牛仔裤)
2018/04/16 全球购物
西班牙香水和化妆品连锁店:Druni
2019/05/05 全球购物
决心书标准格式
2014/03/11 职场文书
材料化学专业求职信
2014/07/15 职场文书
夫妻吵架保证书
2015/05/08 职场文书
水知道答案观后感
2015/06/08 职场文书
煤矿安全生产管理协议书
2016/03/22 职场文书
QT与javascript交互数据的实现
2021/05/26 Javascript
Python中的tkinter库简单案例详解
2022/01/22 Python
Django + Taro 前后端分离项目实现企业微信登录功能
2022/04/07 Python