方法是手动把SessionId传递给服务器,再从服务器端读出SessionId再加载Session。
其实解决问题的办法 SWFUpload的Demo中已经给出了,那就是在SWFUpload的构造函数中设置post_params参数:
swfu = new SWFUpload({
post_params: {
"ASPSESSID": ""
}
post_params中设定的键值对将会以Form表单的形式传递到Upload.ashx,也就是SWFUpload提供了为请求增加自定义请求参数的接口。
上面的代码把当前页面的SessionId写到ASPSESSID值中,当用户上传文件后,ASPSESSID就会传递到服务器上了,这时再读出SessionId再加载Session,就可以判断登录状态了
附PHP版后台处理代码:
if(isset($_REQUEST["sid"])){
session_id(I("request.sid"));
session_start();
$isLogin = session("Login")*1;
} else{
$isLogin = session("Login")*1;
}
分享到:更多