在firefox中使用swfupload上传时发生的问题
说实话,swfupload这个上传组件是相当不错的
能上传大文件,带进度条,可以多文件上传等等。。。
可是在firefox中用它上传的时候就会有问题(当然这也不能怪swfupload,根本原因还是flash player身上)
什么问题呢?
"在非ie内核的浏览期里边swf不能发送cookie"
也就是说,比如你在firefox里面使用swfupload上传文件,如果上传的时候需要做登录验证(这个登录验证是基于cookie或者session),就会出问题。
至于你遇没遇到,反正我是遇到了。
我的解决办法就是:
post_params : {
"swfAuthId" : ´´,
"authKey" : ´´
},
swfupload在上传文件的时候再传递两个参数,这两个参数是怎么来的呢?
<?php
$sessionId = session_id().time();
$systemKey = ´asdfasdfasdfasdfasdfs´; //这个是随即生成的一个字符串,不会变
$authKey = md5($systemKey.$sessionId);
然后在上传文件的时候判断
<?php
if($_POST[´authKey´] !== md5($systemKey.$_POST[´swfAuthId´]){
die(´error!´);
}