Bo-Blog完美集成SWFUpload
时间:2011-11-27 09:37:22
什么是SWFUpload?
SWFUpload是一个客户端文件上传工具,最初由Vinterwebb.se开发,它通过整合Flash与JavaScript技术为WEB开发者提供了一个具有丰富功能继而超越传统<input type="file" />标签的文件上传模式。
SWFUpload的主要特点
• 可以同时上传多个文件
• 类似AJAX的无刷新上传
• 可以显示上传进度
• 良好的浏览器兼容性
• 兼容其他JavaScript库 (例如:jQuery, Prototype等)
• 支持Flash 8和Flash 9
Bo-Blog集成SWFUpload的初衷
用过Bo-Blog的人都知道,Bo-Blog自带的上传文件管理器有如下比较大的缺点:
• 操作不方便,每次只能选一个文件
• 一次最多只能上传5个文件
• 上传文件没有进度条指示
• 不能上传带中文的文件名
而SWFUpload可以很好的弥补以上缺点,可惜网上没找到完美的SWFUpload能与Bo-Blog完全集成,于是花了3天的时间(之前没接触过PHP,也很久没用JavaScript了,因此花的时间长了些)修改了SWFUpload使其能完美的集成在Bo-Blog中。
修改后的SWFUpload在Bo-Blog里的界面
功能和修改说明(除了弥补以上缺点以外的)
• 保留原来的上传程序
• 上传文件大小限制的集成
• 允许上传文件扩展名的集成
• 数据库的集成
• 动态生成上传文件的链接,方便插入附件代码到编辑器
更新历史记录
20090413
第一次发布
安装和配置
解压后上传blog文件夹下面的所有文件到你的Bo-Blog的目录下面,比如我的是/usr/www/lib/blog。
上载目录的配置
编辑blog/plugin/swfupload/upload.php,找到下面代码,更改../../attachment/就可以指定自己的路径,这里建议用相对路径,下面代码说明附件上传的路径是blog/attachment
// Settings
if ($mbcon['uploadfolders'] == '1') {
$save_path = "../../attachment/".date("Ym")."/";
} else {
$save_path = "../../attachment/";
}
上传文件大小的限制
上传文件大小的限制主要有2个方面:
1、Bo-Blog 用户管理的限制,可以在后台的用户管理\用户组设定,编辑当前的用户组,在最后一栏可以设定。
2、PHP本身环境的限制
我的php.ini的设定
;;;;;;;;;;;;;;;;;;;
; Resource Limits ;
;;;;;;;;;;;;;;;;;;;
max_execution_time = 600 ; Maximum execution time of each script, in seconds
max_input_time = 600 ; Maximum amount of time each script may spend parsing request data
;max_input_nesting_level = 64 ; Maximum input variable nesting level
memory_limit = 128M ; Maximum amount of memory a script may consume (128MB)
; Maximum size of POST data that PHP will accept.
post_max_size = 100m
;;;;;;;;;;;;;;;;
; File Uploads ;
;;;;;;;;;;;;;;;;
; Whether to allow HTTP file uploads.
file_uploads = On
; Temporary directory for HTTP uploaded files (will use system default if not specified).
;upload_tmp_dir =
; Maximum allowed size for uploaded files.
upload_max_filesize = 100M
到这里SWFUpload的安装和配置就完成,现在可以开始享受一下SWFUpload所带来的便利,如果有问题可以打开SWFUpload的debug模式,打开blog/admin/cp_upload.php,找到 debug: false, 这一行,将 false 改为 true,刷新页面后在文件管理器里,切换到SWFUpload时将会显示一个调试窗口,对你发现问题有很大的帮助。
完善计划
目前这个代码还有待完善的空间,准备有空再更新,如下:
• 增加图片加水印功能
• SWFUpload界面使用中文,并与Bo-Blog的语言包集成
问与答
暂时还没有。