0

我目前正在尝试在 php 应用程序(与 zend 框架 1.9 结合)中启动并运行上传屏幕。

我知道如何自己上传,也知道如何对文件进行一些基本验证。

我想知道的是,确保文件已正确上传的常用方法是什么。

我查看了验证器示例(尤其是 MD5 示例)。例子:

$upload = new Zend_File_Transfer();
$upload->addValidator('Md5', false, '3b3652f336522365223');

但是根据我的理解,您已经需要知道 MD5 应该是什么结果。因此,用户必须将该信息放入上传屏幕,以便它可以与文件一起传输(但可能是我弄错了)。

所以我的问题是:在 zend-framework 中有没有什么方法可以验证文件而不需要用户的额外输入(除了文件本身)?或者那里使用的做法是什么?

谢谢

4

1 回答 1

0

在我看来,没有必要这样做。这是TCP 协议、Web 浏览器和 PHP 引擎的职责。

TCP 保证服务器收到的数据包与客户端发送的数据包相同。测试 Web 浏览器以确保正确处理 HTTP 上传以正确上传文件,类似地测试 PHP 以确保 HTTP 文件上传以与上传的相同内容保存到服务器。

做这样的事情只是额外的工作,可能永远不会导致错误。要做到这一点,您可能必须使用允许 Javascript 读取本地文件的新 HTML5 功能,然后在 JS 中实现一些哈希函数,因此客户端必须拥有支持文件 API 和支持 HTML5 的浏览器。

于 2012-10-15T18:56:07.623 回答