Mos*_*she 4 php file-sharing uploader multifile-uploader
我正在开发一个网站,我需要一个客户端给我发送近千张图片.我们之间有一点地理距离,因此虽然邮寄CD或SD卡并非不可能,但并不是首选.我可以编写PHP上传器让客户提交图片,还是有更好的方法?我不想订阅任何文件共享站点.
假设我正在编写这样的上传器,有没有办法编写progresbar和/或其他一些功能,以防止被中断的上传文件损坏?
任何有助于资源的链接都是有益的.
谢谢
编辑:
这是一次性的事情,这些是我们正在讨论的高质量图像.它会是几GB.
通过FTP Space,你的意思是我的FTP服务器的用户名和密码?它可以完成,但(为什么)FTP客户端比基于Web的上传器更好?我不确定客户端是否知道如何下载FTP程序.客户端在Mac上,我不相信我见过的几个Mac的FTP程序.
假设我采用"单一拉链中的所有东西"路线,PHP会起作用吗?
再次感谢.
编辑:
好的,到目前为止,我已经确信不使用PHP,除非我们使用.zip文件.另外,我现在可能会修改进度条.等待客户,将在未来几天内回复所有人.
编辑:
遇到某种功能的客户端.客户端将照片放在闪存驱动器上.问题解决了.所有输入都是+1.
我会说设置一些FTP空间或WebDAV共享.如果你不能这样做那么我会将图像上传到单个(或少量)的zip文件中,而不是试图处理数百个独特的上传,这将非常耗时,因为浏览器只会选择一个文件一次在文件上传对话框中(即您不能只选择要上传的整个目录).
为什么不在这个实例中使用PHP:
在PHP中编写一个简单的文件上传处理程序很容易,但是如果你确实想处理非常大的上传,那么你需要警惕文件大小上传限制,脚本执行时间限制和内存限制.第一次设置可能有点令人沮丧.
如果它是你想要处理的多GB文件,那么HTTP上传就不是你想去的方式了(基于,如果你不得不问为什么,让它按你想要的那样工作对你来说可能会非常令人沮丧).
Mac OS上有几个优秀的FTP客户端,没有理由相信Web浏览器是比FTP客户端更好的文件传输方法.
关于进度条支持:
PHP中的Currenly进度条支持非常有限(目前仅通过第三方模块有点毛茸茸)但我相信有一个计划将模块包含在标准发行版中.谷歌搜索uploadprogress.so应该给出一些相关的结果.
回复littlegreen:
我使用了这个扩展http://pecl.php.net/package/uploadprogress(它已经设法与我已经安装的至少一个扩展冲突 - 虽然我认为他们现在已经解决了这个问题)并编写了一个自定义的javascript处理程序(http ://iaincollins.com/javascript/FileUploader.js)基于网络上的一些多个例子,努力结合每个例子的最佳.例如,使用不可见的iframe透明地返回上传进度,创建一个DHTML文件上传对话框,并将丑陋的基于浏览器的文件上传控件替换为透明并将其覆盖在我自己的控件之上(因此它仍然可以点击,因为你虽然您可以获取已选择上传的文件的名称,但无法从JavaScript调用文件上载对话框.获得正确的CSS样式对此非常重要 - 它非常适合浏览器.
我写的JS很遗憾,特定情况,但它可能有一些有用的元素 - 抱歉,我没有任何公开我可以链接到它,因为它是为私人界面创建的.
我看到现在有一个用于uploadprogress的jQuery插件 - 它不会做任何事情,但它会是一个好的开始:http://nixbox.com/demos/jquery-uploadprogress.php ...我记得更好的例子出来了在那里,包括一个处理多个文件上传(通过排队并按顺序执行它们 - 你仍然必须一次选择一个文件),但不幸的是我似乎无法找到它们.
结论:
我会尽量避免麻烦,做一些像FTP空间或私人/对等文件传输应用程序,除非你有时间.
文件传输协议(顾名思义)是专为大文件传输而设计的,是一个更好的选择,因为它需要很少的配置(你不会遇到资源限制),你可以合理地期望客户端有FTP恢复支持,假设你的服务器做了(即如果下载停止,它们应该能够轻松地从它们停止的地方恢复它,而不是从头开始,因为它们将与基于PHP文件的HTTP上载有关).
虽然HTTP具有处理上载文件的能力,但它不那么健壮,并且需要明确配置各种资源限制(在Web服务器和PHP中 - 如上所述)以使多GB文件的上载成为可能.即使使用WebDAV(使用HTTP服务器作为远程文件系统),它也是透明的,但它往往不如FTP强大,主要是由于有错误的客户端实现 - 特别是在Windows和Mac OS上传输非常大的文件时可能会出现问题,尽管它通常适用于小型(例如<500 MB)文件传输.
作为旁注,HTML5规范将改进文件上传的处理方式 - 可以一次上传多个文件,并将文件上传进度作为规范的一部分,但是现在它不是一个真正的选择.
| 归档时间: |
|
| 查看次数: |
870 次 |
| 最近记录: |