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 相关文章推荐
BBS(php & mysql)完整版(五)
Oct 09 PHP
PHP连接access数据库
Mar 27 PHP
php mssql 数据库分页SQL语句
Dec 16 PHP
php实现utf-8和GB2312编码相互转换函数代码
Feb 07 PHP
php生成xml时添加CDATA标签的方法
Oct 17 PHP
PHP内置的Math函数效率测试
Dec 01 PHP
php中debug_backtrace、debug_print_backtrace和匿名函数用法实例
Dec 01 PHP
基于JQuery+PHP编写砸金蛋中奖程序
Sep 08 PHP
PHP使用内置函数file_put_contents写入文件及追加内容的方法
Dec 07 PHP
php array_udiff_assoc 计算两个数组的差集实例
Nov 12 PHP
利用PHP获取汉字首字母并且分组排序详解
Oct 22 PHP
PHP基于phpqrcode类生成二维码的方法示例详解
Aug 07 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函数 serialize()和unserialize()
2012/02/04 PHP
php获取一定范围内取N个不重复的随机数
2016/05/28 PHP
利用PHP扩展Xhprof分析项目性能实践教程
2018/09/05 PHP
jQuery select表单提交省市区城市三级联动核心代码
2014/06/09 Javascript
Javascript 数组排序详解
2014/10/22 Javascript
Labelauty?jQuery单选框/复选框美化插件分享
2015/09/26 Javascript
Angularjs中如何使用filterFilter函数过滤
2016/02/06 Javascript
JQuery点击事件回到页面顶部效果的实现代码
2016/05/24 Javascript
jQuery插件FusionCharts实现的MSBar2D图效果示例【附demo源码】
2017/03/24 jQuery
angular使用bootstrap方法手动启动的实例代码
2017/07/18 Javascript
js 开发之autocomplete="off"在chrom中失效的解决办法
2017/09/28 Javascript
浅谈jquery中ajax跨域提交的时候会有2次请求的问题
2017/11/10 jQuery
jQuery获取所有父级元素及同级元素及子元素的方法(推荐)
2018/01/21 jQuery
VUE的history模式下除了index外其他路由404报错解决办法
2019/08/21 Javascript
layui 实现二级弹窗弹出之后 关闭一级弹窗的方法
2019/09/18 Javascript
jQuery AJAX应用实例总结
2020/05/19 jQuery
11个Javascript小技巧帮你提升代码质量(小结)
2020/12/28 Javascript
[03:00]《DAC最前线》之欧美新秀VS老将
2015/02/01 DOTA
python爬取网站数据保存使用的方法
2013/11/20 Python
Python的Django框架中forms表单类的使用方法详解
2016/06/21 Python
Python列表切片用法示例
2017/04/19 Python
Python实现对象转换为xml的方法示例
2017/06/08 Python
Python编程实现的简单神经网络算法示例
2018/01/26 Python
django认证系统实现自定义权限管理的方法
2018/07/16 Python
详解python执行shell脚本创建用户及相关操作
2019/04/11 Python
Flask使用Pyecharts在单个页面展示多个图表的方法
2019/08/05 Python
python实现多进程按序号批量修改文件名的方法示例
2019/12/30 Python
Python列表嵌套常见坑点及解决方案
2020/09/30 Python
美国嘻哈文化生活方式品牌:GLD
2018/04/15 全球购物
毕业生就业推荐信范文
2013/12/01 职场文书
优秀企业获奖感言
2014/02/01 职场文书
观看《周恩来的四个昼夜》思想汇报
2014/09/12 职场文书
晋江市人民政府党组群众路线教育实践活动整改方案
2014/10/25 职场文书
市级三好学生评语
2014/12/29 职场文书
2015小学教师德育工作总结
2015/05/12 职场文书
Nest.js参数校验和自定义返回数据格式详解
2021/03/29 Javascript