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 相关文章推荐
PHP警告Cannot use a scalar value as an array的解决方法
Jan 11 PHP
PHP 关于访问控制的和运算符优先级介绍
Jul 08 PHP
php对二维数组进行排序的简单实例
Dec 19 PHP
如何让搜索引擎抓取AJAX内容解决方案
Aug 25 PHP
php过滤html标记属性类用法实例
Sep 23 PHP
C# WinForm中实现快捷键自定义设置实例
Jan 23 PHP
帝国cms目录结构分享
Jul 06 PHP
CodeIgniter与PHP5.6的兼容问题
Jul 16 PHP
php使用CutyCapt实现网页截图保存的方法
Oct 03 PHP
PHP实现的登录,注册及密码修改功能分析
Nov 25 PHP
利用PHP访问带有密码的Redis方法示例
Feb 09 PHP
Laravel框架中集成MongoDB和使用详解
Oct 17 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+jQuery+Ajax简单实现页面异步刷新
2016/08/08 PHP
使用XHProf查找PHP性能瓶颈的实例
2017/12/13 PHP
PHP中number_format()函数的用法讲解
2019/04/08 PHP
php和redis实现秒杀活动的流程
2019/07/17 PHP
Thinkphp5.0框架视图view的模板布局用法分析
2019/10/12 PHP
phpStudy vscode 搭建debug调试的教程详解
2020/07/28 PHP
IE6,IE7下js动态加载图片不显示错误
2010/07/17 Javascript
使用基于jquery的gamequery插件做JS乒乓球游戏
2011/07/31 Javascript
仿微博字符限制效果实现代码
2012/04/20 Javascript
Jquery图片滚动与幻灯片的实例代码
2013/04/08 Javascript
使用js完成节点的增删改复制等的操作
2014/01/02 Javascript
js日期范围初始化得到前一个月日期的方法
2015/05/05 Javascript
jQuery左侧大图右侧小图焦点图幻灯切换代码分享
2015/08/19 Javascript
基于jQuery实现的扇形定时器附源码下载
2015/10/20 Javascript
jquery 获取select数组与name数组长度的实现代码
2016/06/20 Javascript
js插件dropload上拉下滑加载数据实例解析
2016/07/27 Javascript
详解angular用$sce服务来过滤HTML标签
2017/04/11 Javascript
基于Koa2写个脚手架模拟接口服务的方法
2018/11/27 Javascript
vue 插件的方法代码详解
2019/06/06 Javascript
javscript 数组扁平化的实现
2020/02/03 Javascript
JS脚本实现定时到网站上签到/签退功能
2020/04/22 Javascript
[48:12]Secret vs Optic Supermajor 胜者组 BO3 第三场 6.4
2018/06/05 DOTA
详细解读Python中的__init__()方法
2015/05/02 Python
Python中运算符"=="和"is"的详解
2016/10/08 Python
python 读取Linux服务器上的文件方法
2018/12/27 Python
pytorch 准备、训练和测试自己的图片数据的方法
2020/01/10 Python
解决Keras 中加入lambda层无法正常载入模型问题
2020/06/16 Python
Python爬虫实例——爬取美团美食数据
2020/07/15 Python
HTML5拖放API实现拖放排序的实例代码
2017/05/11 HTML / CSS
高分子材料与工程专业个人求职信
2013/12/15 职场文书
师范学院教师自荐书
2014/01/31 职场文书
1亿有多大教学反思
2014/05/01 职场文书
辞职离别感言
2015/08/04 职场文书
公文写作:工伤事故分析报告怎么写?
2019/11/05 职场文书
python面向对象版学生信息管理系统
2021/06/24 Python