好久没有写点东西了,今天在写代码的刚做了一个在TP5下的Auth权限认证,由于之前在项目中使用了uploadify上传文件, 发现加了登录session验证之后就没有办法上传文件了点击上传会提示登录 ,跳转到登录界面。
我的登录session验证放在了基类控制器中的初始化方法里。
if (!session('?username') || !session('?id')) {
$this->error('请先登录!','Login/index');
}
在Firefox中出现这个问题,但是IE没有这个问题,想到会不会是sessionID无法传递而造成登录验证失败,查阅了uploadify的相关文档后发现有一个参数。
‘formData’:
//JSON格式上传每个文件的同时提交到服务器的额外数据,可在’onUploadStart’事件中使用’settings’方法动态设置。
尝试在这个参数之后附带sessionID。
//传输session解决登录验证问题
'formData':{sid:"<?php echo session_id()?>"},
然后在登录验证前检查该变量,并载入session_id
if (!empty($_POST['sid'])) {
session_id($_POST['sid']);
}
成功解决了问题! 虽然问题小- - 但是很开心啊
!