为PJBlog增加多附件上传功能——MultiAttUpload for PJBlog
作者:dudo 来源:dudo博客 时间:2008-05-26 12:47:00
PJBlog自带附件上传功能每次只能传送一个文件,对于上传大量附件来说是一件比较麻烦的事情。最近发现一直有人在找在PJBlog中实现多附件上传的方法,因此为大家献上dudo's MultiAttUpload组件修改。这个小组件可以实现同时多任务上传,并且可以像Discuz论坛那样在编辑区域内插入附件。下面是多附件上传MultiAttUpload4PJBlog的使用方法和安装说明。
安装说明:
下载下面的附件,解压后将文件 MultiAttUpload.asp 上传到你博客的根目录
作者网站下载: 点击下载此文件
asp之家下载地址:MultiAttUpload.zip (2.77 KB)修改日志发表文件blogpost.asp(如果你修改过这个文件的名称,请在相应文件中修改):
a. 查找 编辑内容摘要</label>,并其后加入下面代码:
<a href="javascript:void(0)" onclick="popnew('MultiAttUpload.asp','uploadWin','500','300')"><img src="images/insert.gif" alt="批量上传附件" style="border:0" />批量上传附件</a>
b. 查找下面的代码段:
<tr>
<td align="right" valign="top" nowrap><span style="font-weight: bold">附件上传:</span></td>
<td colspan="2" align="left"><iframe src="attachment.asp" width="100%" height="24" frameborder="0" scrolling="no" border="0" frameborder="0"></iframe></td>
</tr>
将其替换为(注:如果你想保留原来的上传功能,请在这段代码的前面插入下面的代码):
<tr><td></td><td id="multiAtt"></td></tr>
c. 保存并上传文件
保存所有文件,完成修改。
使用方法:
完成安装后,登录系统,进入“发表日志”,你会发现在“编辑内容摘要”旁边多了一个按钮“批量上传附件”,点击即打开新窗口,进行多附件上传;
在打开的窗口中,选中你要上传的附件,这时你要上传的文件名就会出现在页面中,如果你想取消某个文件的上传,可以点击右面的“删除”即可;
在选中所有文件后,点击上传,开始上传文件。注意,如果你的文件格式和文件大小超出限制会导致上传失败,所有未上传的文件名称和已经功能上传的文件数都会回显到页面;
完成上传后,点击下方的“关闭页面”或者直接关掉页面,回到发表文章窗口;
这时你会发现在“内容摘要”下方出现了你已经上传成功的文件信息,这包括原始文件名、在服务器端的文件名、插入、查看、只有会员可以下载等。注意,此时的文件并没有真正引用到你的文章中,你需要点击“插入”加入到正文内容中;
“查看”允许你打开文件,如图片等,有时候忘记了哪张图片是哪张的时候,这个功能可能会有用;
此外,由于PJBlog的附件和文章在数据库中并没有建立对应关系,所以你需要在点击每个文件后面的“插入”将它们引用到文章中,否则上传的附件不会在文章中出现。
最后说明:
上传页面在Internet Explorer 6、7以及Firefox中测试通过,但是如果你使用的是 Internet Explorer 8或者安装 IE8又退回到了7可能会出现问题,不过这个问题只会影响页面的美观,不会影响使用;
此外,MultiAttUpload的上传功能和上传之后的插入功能都使用的PJBlog的自带组件功能实现,特别是在“插入”中并不能实现在光标位置插入而只能在内容的末尾插入,这是PJBlog的一个问题,你可能通过修改common下的JavaScript文件实现(一般地,可能先将附件全部上传,然后编辑文章的相应位置点击“插入”)。
如果遇到什么问题或者有更好的修改意见,请跟我联系 :)。