文档标签‘Flash’

解决jQuery插件 jqUploader 无法在 jQuery-1.3.2下工作的问题

jqUploader是一款十分好用的jQuery Flash 上传插件,但是无法工作在1.3.2版本下,是一个十分糟糕的问题,今天就给它动动手术 打开 jquery.jqUploader.js 找到 var $thisInput = $("input[@type='file']",$this); 改成 var $thisInput = $("input [type='file']",$this); 找到 var maxFileSize = $("input[@name='MAX_FILE_SIZE']", $(this.form)).val(); 改成 var maxFileSize = $("input [name='MAX_FILE_SIZE']", $(this.form)).val(); 找到 afterScript: getstaffatt(), 注释之 找到 $("*[@type='submit']",this.form).hide(); 改成 $("* [type='submit']",this.form).hide(); 保存一下,在用jQuery-1.3.2测试,已经成功了 总结一下,jQuery最新版里面已经没有了类似于[@type='XXX']这样的写法了,需要把@去掉,当然,还要在 "input" 后面加一个空格,这才是jQuery过滤器的正确写法

继续阅读 »

解决使用FireFox+Flash上传文件时SESSION丢失的问题

不知道Firefox是出于安全考虑还是有Bug,使用Flash请求页面的时候Cookies和SESSION都不会传递,上网查一下,很多教程都说是把php.ini中的 session.use_trans_sid设置为1,但是我不明白这是什么意思,所以不敢轻易修改,免得带来安全问题,而且如果是虚拟主机用户要不是没办法修改了? 所以要想别的解决方法,从程序上解决问题,看到一位牛人的Blog(竟然禁止了IE访问他的Blog,不知道要损失多少访问量,嘎嘎),他的方法是在flash的URL后面加参数,把sid传递给flash,然后在flash里面把sid从flash里面传递给页面,但是他也没说清楚在页面里怎么处理传递过去的sid,因为我是用的jqUploader插件,所以没必要这么麻烦,况且我对flash也不熟悉,万一改坏了那不彻底完蛋了。 下面是我的解决方法 首先通过php的session_id()函数把sid从url参数传递过去,然后从$_GET数组获取sid,然后在接收页面使用session_id($sid)重新设置sid的值,具体代码如下

继续阅读 »