1.静态页面先接收到session的值;这里是管理员admin登陆
<input type="hidden" id="username" value="{$Think.session.username}" />
2.通过js把这个值传递给后台
$(function(){
var len = $('.button1').size();
var username = $('#username').val();//获取到传递的session值
for(var i=1;i<len+1;i++){
$('#button'+i).uploadify({
swf : ThinkPHP['PUBLIC']+'/uploadify/uploadify.swf',
uploader : ThinkPHP['UPLOADER'],
width : 100,
height : 25,
fileTypeDesc : '图片类型',
buttonText : '上传图片',
<span style="white-space:pre"> </span>//传递session值
formData : {
'username' : username,
},
fileTypeExts : '*.jpeg; *.jpg; *.png; *.gif',
onUploadSuccess: function(file, data, response){
$('#ccc').html(data);
}
});
}
});
3.后台处理一下获取的值 img控制器继承Public控制器
//uploadify上传
public function upload(){
//解决uploadify插件无法传递session的问题
$username = $_POST['username'];
if (!isset($_POST['username'])) {
exit;
} else {
var_dump($username);
$username = $_POST['username'];
session('username',$username);
session('[pause]');
session('[start]');
}
}
需要注意的一点这里这里的方法是写在img控制器的;
如果你写在了public控制器,就会先执行析构函数,导致一直判断失效。