默认只能传最大 2M 的文件。 不过,可以配置php.ini文件,修改上传文件大小的限制。 配置php.ini文件 (以上传500M以下大小的文件为例) 查找以下选项并修改-> file_uploads = On ;打开文件上传选项 upload_max_filesize = 500M ;上传文件上限 如果要上传比较大的文件,仅仅以上两条还不够,必须把服务器缓存上限调大,把脚本最大执行时间变长 post_max_size = 500M ;post上限 max_execution_time = 1800 ; Maximum execution time of each script, in seconds脚本最大执行时间 max_input_time = 1800 ; Maximum amount of time each script may spend parsing request data memory_limit = 128M ; Maximum amount of memory a script may consume (128MB)内存上限
可以修改 max_execution_time 在php.ini里查找 max_execution_time 默认是30秒.改为 max_execution_time = 0 0表示没有限制!
查找php的配置文件,在php.ini中发现了这样几行:; Maximum allowed size for uploaded files.upload_max_filesize = 2M(PHP默认上传文件大小为2M)把它改为了10M重启服务器后就可以上传10M以内的文件了。
修改上传附件大小限制需要服务器权限才可修改。
修改 php.ini (Windows 系统在 C:/Windows/system32 下)中的下面几项: post_max_size = 8M (表单提交的最大限制,此项不是限制上传单个文件的大小,而是针对整个表单提交的数据进行限制。) upload_max_filesize = 2M (上传的单个文件的最大限制) 保证 post_max_size >= upload_max_filesize 即可,也就是前者不小于后者。
修改之后一定要重启 Web 服务。
$File = $_FILES[‘filenames’];foreach( $File[‘name’] as $Key => $FileName ) { $FileNames = $FileName; //上传的文件名 $FileTypes = $File[‘type’][$Key];//上传的文件类型 $FileSize = $File[‘size’][$Key];//上传的文件大小 $FileTmps = $File[‘tmp_name’][$Key]; //上传的文件副本 //其他同理 //文件处理方式和单文件一样了}
php上传后, $_FILES本身就是个数组, 单文件上传的时候是二维数组, 多文件上传后, 就是三维数组了
唯一的区别要做的, 就是用foreach循环遍历一次, 在循环内进行操作, 即可!其他没是差别
需要在PHP.ini里设置以下几项:
1.post_max_size=10M表单提交最大数据为10M.此项不是限制上传单个文件的大小,而是针对整个表单的提交数据进行限制的.
2.file_uploads=On是否允许上传文件,如果为OFF您将不能上传文件.
3.upload_tmp_dir=”D:/APM/PHP/uploadtemp/”上传文件时系统使用的缓存目录.如果此目录所在磁盘空间不足的话您将不能上传文件.
4.upload_max_filesize=2M最大上传文件大小,此项针对上传文件时单个文件的大小.与post_max_size之间的关系:在论坛发表贴子时,您post_max_size设为10M,而此项设成了2M,那么您只能上传最大为2M的附件,且可以同时上传5个.注意:很多人遇到修改php.ini后重应WEB服务后仍然不能生效.这种情况应该先确认一下所改的php.ini是不是当前PHP所使用的.您可以在WEB目录下建立一个php文件,内容很简单就一句话代码:
操作步骤如下:;
1.使用Phptoshop打开图片。;
2.点击图像-图像大小。;
3.设置宽度和高度,点击确定。;
4.点击文件-另存为,设置保存路径,点击保存。;
5.在指定路径查看图片。
不用这么麻烦,jquery有很多插件就可以实现上传文件进度的样式,可以使用下 ps:既然你这么个性,我就给你说说实现的原理,具体细节你自己去弄吧.普通的页面访问全是同步的,就是 请求–>反馈,而进度条需要的实时的数据,所以普通页面是实现不了这个功能的,得需要借助异步ajax周期获取进度数据,这个数据的来源当然就是服务器端发送的了,这样就遇到了一个严重的问题,php获取不了文件传送过程中的状态.幸好,php的创始人写了一个APC扩展(另外一个扩展是uploadprogress),利用扩展的语法,加上ajax,使用js操作页面的dom对象,就实现了进度条.你明白了原理,你也很难做出来,哎.
如果是 windows ,如果已经安装成功,那把网页copy到htdocs目录下就可以