欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

Apache+PHP,swfupload做批量上传时遇到的文件类型支持问题和文件

程序员文章站 2022-05-06 13:39:48
...

最近要做一个音乐库的后台管理,需要用到批量上传,网上搜资料,发现貌swfupload很好用的样子,然后我就想如何将它移植到我的项目中。其他都还顺利,我直接找个了批量上传图片的demo,但是修改文件类型(我想只支持mp3,、wma、lrc文件)时,发现网上的资料提

最近要做一个音乐库的后台管理,需要用到批量上传,网上搜资料,发现貌似swfupload很好用的样子,然后我就想如何将它移植到我的项目中。其他都还顺利,我直接找个了批量上传图片的demo,但是修改文件类型(我想只支持mp3,、wma、lrc文件)时,发现网上的资料提到的修改方法不好使,经过多番纠结,发现问题出在浏览器兼容上,我一直用的是chrome。现在把正确的配置代码奉上:

// File Upload Settings
				file_size_limit : "1024 MB",	// 1GB
				file_types : "*.mp3;*.wma;*.lrc",
				file_types_description : "音频及歌词",
				file_upload_limit : "0",

可以看到,最后一行的file_upload_limit的设置:可以同时选择的文件个数是无限制的,

第一行,设置可以容纳的同时上传文件大小限制为1G。

在IE下,文件类型没问题了,只会过滤出来mp3、wma和lrc文件,但是文件上传大小仍不能超过2M,继续找原因发现有这样一个常见问题:

所上传的文件体积并未超出SWFUpload所设置的数值,但为何无法成功上传?

通常这是由于服务器端的限制所造成的,以Apache+PHP为例,请修改php.ini中的post_max_size与upload_max_filesize两项设置。

我一开始将post_max_size设置为2048,将upload_max_filesize设置为200M(单个文件大小限制),发现还是会报错;后来经过测试发现post_max_size默认值为8M,将其设置为200M就没有问题了,也就是说之前设置的2048太大,超出的配置限制,这个问题特别隐蔽,我也是意外发现的,很是幸运。


以上就是目前就是我使用swfupload遇到的问题和解决方案,希望对大家有所帮助,欢迎留言,希望多多交流。