我有一个基于SWFUpload的上传系统,它调用PHP脚本。 问题是,如果上传的文件有任何问题(太小的图像暗淡,太短的mp3文件等),系统应该通过设置带有错误消息的cookie来抛出错误(这是整个CMS处理的方式)错误)。问题是由SWFUpload调用的脚本设置的cookie似乎在浏览器中不可见...
是否有任何解决方案,或者我是否必须通过数据库传递错误消息?
答案 0 :(得分:0)
每当有人遇到闪存和Cookie问题时,我会立即想到this long running flash bug。
您应该能够通过打印会话ID服务器端(当您收到上传请求时)并将其与浏览器中的会话ID(使用firebug或等效物)进行比较来验证是否是这个。如果它不同,我认为可以说这是这个bug的错误。
解决它的常用方法是将会话的GET变量附加到上传URL,然后将其手动设置为服务器端的会话。
Here's关于这个问题的另一个SO线程有一个很好的答案(遗憾的是不是特定于php,但可能会给你一个好主意)。
另外,我在google(flash + upload + cookie)上看到了相当数量的php解决方案,但是还没有在php专门解决这个问题所以我不能推荐一个来源超过任何其他。
如果你有时间请注册adobe的bug追踪器只是为了对错误进行投票,这样我们就可以让Adobe清楚地知道它正在影响很多人。
希望这足以让你有一个良好的开端。