我有一个具有文件上传功能的表单,如果用户尝试上传的文件太大,我希望能够有一些不错的客户端错误报告,有没有办法用jQuery检查文件大小,要么纯粹在客户端或以某种方式将文件发回服务器进行检查?
我想简单地限制用户可以上传的文件的大小.
我认为maxlength = 20000 = 20k但这似乎根本不起作用.
我正在运行Rails,而不是PHP,但是我认为在HTML/CSS中做客户端更简单,或者使用jQuery作为最后的手段.这是非常基本的,但必须有一些我遗漏或不知道的HTML标记.
希望支持IE7 +,Chrome,FF3.6 +.我想如果有必要,我可以支持IE8 +.
谢谢.
使用时
ini_get("upload_max_filesize");
Run Code Online (Sandbox Code Playgroud)
它实际上为您提供了php.ini文件中指定的字符串.
将此值用作最大上载大小的参考是不好的,因为
1M等,这些需要大量的额外解析0.25M,当upload_max_filesize是,它实际上是ZERO,使得再次更难解析值ini_get那么,有没有办法让PHP实际使用的值,除了报告的ini_get那个,或者确定它的最佳方法是什么?
我想知道命名的隐藏字段MAX_FILE_SIZE应该如何工作?
<form action="" method="post" enctype="multipart/form-data">
<!-- in byes must preceed file field -->
<input type="hidden" name="MAX_FILE_SIZE" value="2097152" />
<input type="file" name="upload" />
<input type="submit" name="submit" value="Submit" />
</form>
Run Code Online (Sandbox Code Playgroud)
我上传了一个4MB +的文件,但我没有收到客户端的警告(我不是在谈论服务器端).该怎么MAX_FILE_SIZE办?
UPDATE
好吧,这样它就可以给PHP强加一个"软"限制.但使用它和检查$_FILES['upload']['size'] < 2000代码之类的东西有什么区别吗?