去年年中,有幸认识uploadify,并且解决了公司系统前台上传的一些问题,最近有人提出,说要把后台也上传也稍稍改改,改成这个。(目前用的是最原始的file表单提条。虽然可以用ajax随时添加file表单以及稳定,但是速度上太慢了,无法接受!)

实施的时候,又回头看了下去年写的《Uploadify与php使用详解》,然后就替换到了后台系统框架里面。一切进展的很顺利,然后测试了一张图片,发现没有上传成功:

uploadify http error 401

扎眼一看,HTTP Error错误,查看fireBug,里面的网络情况,发现没有。然后在onComplete回调函数后面添加了一个显示错误的函数:

        onError: function(errorObj) {
            alert(errorObj.info+"            "+errorObj.type);
        }

最后就好使了,错误就能弹出来:

uploadify http 401

http error 401 这个还不太熟悉,因为常见的是:404,500,302,200这些,所以一时间拿不准,谷歌一下之后才知道这个是权限的问题。

回头检查了下框架的控制器权限,然后重新登录再上传就OK了:

解决 uploadify http error 401

如果在火狐下还是不行的话,升级一下吧.uploadify3.1 及以上的版本不会出现该问题!

如果还是没有解决请查看:

Nginx:

解决nginx下uploadify的401 HTTP ERROR

Apache:

about uploadify http error 401 (Unauthorized)

 

uploadify3.1 PHP+formData动态传值 Dome下载:http://www.pooy.net/dynamic-dome-uploadify3-1-phpformdate-download.html

在实际的开发过程中,可能我们的系统框架都是不一样的,所以需要大伙认真检查了!最后一点就是上传保存的文件夹权限设置为最大。http uploadify error 401问题的解决方法其实就是权限的问题。

uploadify 后台处理 推荐看看!

  1. 请问一下,我将uploadify和Struts2结合做了一个多文件上传的例子,但是发现多个文件上传时,有多少文件就会分多少次提交,比如我上传了3个文件,前台就提交了三次到后台,由于Struts2的多文件上传是定义的数组接收,可以一次性接收多个File,这样的话就违背了Struts2多文件上传的原则,也就没必要接收数组了,可是如果我想让插件一次性提交所有上传的文件,如何做到呢?

    • 你好!
      可以换一种思路去解决,uploadify是用的flash+ajax来实现的一个多进程上传插件。
      你的问题是:想让插件一次性提交所有上传的文件.
      这个目前做不到,因为他虽然是一个多进程上传插件,但也有自己的队列。不可能同时都跑向一个通道,他们也分先后,不过那一点延迟对用户来讲,他们不会在乎。

      我在做这个的时候,就是谁先到后台,我就处理谁。处理完之后,然后该干嘛的就干嘛去。前提是保存这个临时的文件夹的命名要有规则。
      在后面处理的时候就是依据这个文件的名称然后去遍历那些文件。

      • 我的需求中上传的文件是xls电子表格,上传后根据表格内容解析后对数据库进行相应操作,因为操作数据库因此我想进行事务控制,如果同一批上传的文件其中某一个出现问题,则撤销全部;反之,则全部更新数据;呵呵,既然这个插件是采用的多线程,那么我这里就无法同批进行事务控制了,至于你说的临时文件夹,我暂时用不着,因为上传的内容我不用再去读取,解析完成,就删除了,既然这样,我选择将其上传数控制最多只能1个!谢谢,pooy~

Leave a Reply to weiw Cancel Reply

电子邮件地址不会被公开。 必填项已用*标注

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="">

请选择吧!