项目在IE中使用ckfinder上传文件时,会出现“因为安全原因,文件不可浏览. 请联系系统管理员并检查CKFinder配置文件.”的提示,我也没认真去研究ckfinder, 因为使用ckfinder上传的话,要有相关的权限才能去进行上传操作,所以想到可能是flash没传输cookie到服务器吧,相关认证信息不传输的话后台也就没法去进行权限管理了,也就变为无权限去操作了。记得以前使用swfupload的时候是要加入认证字段的。
解决:直接去使用config.removePlugins = 'flashupload';配置去掉flash上传插件,使用普通上传或html5的上传功能。
如果你的网站含有文件上传功能,那可以使用本文介绍的5款ajax文件上传控件,提升用户体验。要知道,上传文件总是个痛苦的过程,要消除不太现实,但至少如果你为减少用户的痛苦努力了,那用户也会喜欢你的网站的。
1. FancyUpload (演示地址)
FancyUpload是一个采用Flash与Ajax(MooTools)技术实现包含上传进度条的多文件上传组件,类似于SWFUpload。
2. SwfUploadPanel (演示地址)
SwfUploadPanel是一个结合SwfUpload v2.0.2与ExtJS 2.0.x开发的多文件上传面板(panel)。
3. Yahoo! UI Library: Uploader (演示地址)
YUI Uploader Control结合Flash开发的文件上传控件。支持在同一个”Open File”对话框中一次性选择多个文件。文件扩展名过滤,以帮助用户准确选择。文件上传过程跟踪。在文件上传POST请求中附件额外的参数。
4. dhtmlxVault
基于Ajax技术开发,包含上传进度提醒的Dhtml javascript文件上传控件。不同的文件类型会显示相应的icons。
5. jQuery: Ajax file upload (演示地址)
Ajax文件上传插件让用户能够很方便地上传多个文件而无需刷新页面。此外,可以使用任何元素(图片,文字,按纽等)来触发文件选择窗口。
找到php中的php.ini文件,用写字板打开:
1、查找post_max_size,指通过表单POST给PHP的所能接收的最大值,包括表单里的所有值,默认为8M,看你自己需要进行改变。
2、查找File Uploads,首先确认file_thinksnet/uploads = on ;是否允许通过HTTP上传文件的开关,默认为ON即是开。 upload_tmp_dir ;
查找upload_max_filesize ;即允许上传文件大小的最大值。默认为2M。
3、如果要上传>8M的文件,那么只设置上述四项还不定一定可以。最好对下面的参数也进行设置:
查找max_execution_time = 600 ;每个PHP页面运行的最大时间值(秒),默认30秒。
max_input_time = 600 ;每个PHP页面接收数据所需的最大时间,默认60秒 。
memory_limit = 8M ;每个PHP页面所吃掉的最大内存,默认8M。
二、修改\phpmyadmin\import.php文件。(注:这是设置phpmyadmin的,如果你的数据库很大的情况可以通过这个办法将数据库备份下来,而不再是分卷备份)
用写字板打开import.php文件:
1、查找$memory_limit,默认为$memory_limit = 2 * 1024 * 1024;自己修改。
2、下边三四行的位置有同样的语句,自己修改。
三、到这里还不行,IIS的问题。
1)解决在 IIS 6.0 中,无法上传大容量文件的办法:
1、先在服务里关闭 iis admin service 服务。
2、找到 windows\system32\inetsrv\ 下的 metabase.xml 文件。
3、用写字板打开,找到 ASPMaxRequestEntityAllowed 把它修改为需要的值(默认为:204800,即:200K)。
4、存盘,然后重启 iis admin service 服务,重启IIS。
2)解决在 IIS 6.0 中,无法下载超过4M的附件步骤:
1、先在服务里关闭 iis admin service 服务。
2、找到 windows\system32\inetsrv\ 下的 metabase.xml 文件。
3、用写字板打开,找到 AspBufferingLimit 把它修改为需要的值(默认为:4194304,即:4MB)。
4、存盘,然后重启 iis admin service 服务,重启IIS。
OK,有以上三步,PHP的2M限制完全搞定!
其他网友补充:
在php.ini里面可以设置最大上传文件大小
解决方法:
第一:
在php.ini里面查看如下行:
upload_max_filesize = 8M
post_max_size = 10M
memory_limit = 20M
另外要确认上传的 <form> 里类似下面的这行
<input type="hidden" name="MAX_FILE_SIZE" value="500000">
第一步,需要卸载掉今天更新的flash最新版10.1
第二步,下载flash10.0,就是上一版本,不会再有兼容问题的最新版flash。
第三步,需要操作注册表
由于以前安装的最新版10.1在你的电脑注册表中保留了版本信息,以是当然你安装这个10.0版本的时候,会提示你【正尝试安装的adobe flash player不是最新版本。】,并阻止你的安装,即使你已经把以前的版本卸载的干干净净。
解决方法:单击【开始】【运行】输入【regedit】打开注册表,定位到【[HKEY_LOCAL_MACHINE\SOFTWARE\Macromedia\】然后将里面的【FlashPlayer】项,右键单击删除,彻底删掉。这时就可以正常安装你的旧版本flash了。
电脑故障 | ps教程 | 设计 |
创业 | seo | discuz |
word | 配置 | c# |
数据库 | mysql | asp |
ShopEx | html | JavaScript |
模板 | Joomla | PhotoShop |
CSS | PHP | WordPress |
ECShop | jQuery | 用户体验 |
新闻 | 读书 |