php当中,如何利用files循环一次files 上传文件为空多张图片!!

php实现批量上传图片的技巧~_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
php实现批量上传图片的技巧~
上传于||文档简介
&&p​h​p​实​现​批​量​上​传​图​片​的​技​巧​~
阅读已结束,如果下载本文需要使用1下载券
想免费下载本文?
下载文档到电脑,查找使用更方便
还剩1页未读,继续阅读
你可能喜欢PHP中多张图片上传并校验的实现
PHP中多张图片上传并校验的实现:
单张的图片上传是不复杂的,这里涉及到多张图片上传和对图片格式的校验,保证上传的一定是图片,防止上传其他文件到服务器。
基本实现算法是使用数组的形式,把所有的图片提交个一个数组,对数组的元素进行一个个的处理。
/*********************************************
* 文件:uploadimg.php
* 用途:图片上传程序
*********************************************/
// 图片目录
img_dir = &../upload/&;
// && html 显示上传界面
/* 图片上传处理 */
// 把图片传到服务器
// 初始化变量
uploaded = 0;
unuploaded = 0;
//只允许五张图片上传
for (i=0; i&=5; i++)
//获取当前图片的信息
is_file = _FILES['imgfile']['name'][i];
//如果当前图片不为空
if (!empty(is_file))
//把当前图片的信息存储到变量里
result[i] = &
&tr class=td2 align=center&
&td&&. _FILES['imgfile']['name'][i] .&&/td&
&td&&. round(_FILES['imgfile']['size'][i]/1024, 2) .&K&/td&
&td&&. _FILES['imgfile']['type'][i] .&&/td&
// 判断上传的图片的类型是不是jpg,gif,png,bmp中的一种,同时判断是否上传成功
_FILES['imgfile']['type'][i] == &image/pjpeg& ||
_FILES['imgfile']['type'][i] == &image/gif& ||
_FILES['imgfile']['type'][i] == &image/x-png& ||
_FILES['imgfile']['type'][i] == &image/bmp&
//如果上传的文件没有在服务器上存在
if (!file_exists(img_dir . _FILES['imgfile']['name'][i]))
//把图片文件从临时文件夹中转移到我们指定上传的目录中
move_uploaded_file(_FILES['imgfile']['tmp_name'][i],
img_dir . _FILES['imgfile']['name'][i]);
result[i] .= &成功&;
uploaded++;
else //如果文件已经在服务器上存在
result[i] .= &&font color=red&文件已存在&/font&&;
unuploaded++;
result[i] .= &&font color=red&失败&/font&&;
unuploaded++;
result[i] .= &&/td&&/tr&&;
} //end if
} // end for
// 如果没有选择任何图片
if (empty(result))
prompt_msg(&错误信息&, &没有选择任何图片。&, &返回上一步&, &uploadimg.php?action=upload& );
// 显示所有上传后的结果
echo & &table cellpadding=4 cellspacing=1 border=0 class=table width=400 align=left&
&tr class=navi align=center&
&td&文件名&/td&
&td&大小&/td&
&td&类型&/td&
&td&上传结果&/td&
foreach( result as value)
echo &&tr class=td1&
&td colspan=4&共上传 & . (uploaded + unuploaded) . &, 成功: uploaded, 失败:&font color=red& unuploaded&/font& &/td&
&tr class=navi&
&td colspan=4 align=center&[ &a href='uploadimg.php?action=upload' title='继续上传'&继续上传&/a& ] &&&&[ &a href='image.php' title='浏览图片'&浏览图片&/a& ]&/td&
阅读本文后您有什么感想? 已有
人给出评价!
13-05-2512-10-2412-02-0311-12-1511-09-2111-09-0311-07-0811-07-04
注:您的评论需要经过审核才会显示出来
没有查询到任何记录。
Copyright &
PC6下载().All Rights Reserved
备案编号:湘ICP备号PHP中上传多张图片
在test.php文件中
&form action="upload.php"
method="post" enctype="multipart/form-data"&
&&&p&Pictures:&br
type="file" name="pictures[]" /&&br
type="file" name="pictures[]" /&&br
type="file" name="pictures[]" /&&br
type="submit" name="upload" value="添加" /&
在upload.php中如下
&if($_POST['upload']=='添加'){&
&&$dest_folder&&
=& "picture/";&&
//上传图片保存的路径&图片放在跟你upload.php同级的picture文件夹里
&&$arr=array();&
//定义一个数组存放上传图片的名称方便你以后会用的,如果不用那就不写
&&$count=0;&
&&if(!file_exists($dest_folder)){&
&&&mkdir($dest_folder);
($_FILES["pictures"]["error"] as $key =& $error)
&&&if ($error ==
UPLOAD_ERR_OK) {&
&&&&$tmp_name
$_FILES["pictures"]["tmp_name"][$key];&&
&&&&$name&&&
= $_FILES["pictures"]["name"][$key];
&&&&$uploadfile
= $dest_folder.$&
&&&&move_uploaded_file($tmp_name,
$uploadfile);
&&&&$arr[$count]=$
&&&//&$files=substr($uploadfile,3);
//如果你到底的图片名称不是你所要的你可以用截取字符得到
echo $uploadfile."&br
$files."&br
echo $arr[$count]."&br /&";
就这么多了,自己可以试着写写看,就会发现上传图片并不是很难的事,而且是很简单啊!
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。网页设计教程与开发
提供各种常见网页效果
提供各种各样的设计教程
装扮QQ,让QQ变得更酷
设计参考,提高自升水平
学习服务器和操作系统
提供各种素材和工具
收藏学习资料
您现在的位置:&&>>&&>>&&>>&&>>&&>>&正文
php简单实现批量上传图片的方法
本文实例讲述了php简单实现批量上传图片的方法。分享给大家供大家参考,具体如下:
function upload_multi($path,$photo,$i){
$uploaddir = './'.$//文件存放目录
if(!file_exists($uploaddir))//如果目录不存在就新建
$uploaddir=mkdir($uploaddir);
$piece = explode('.',$photo['name'][$i]);
$uploadfile = $uploaddir . '/'.md5($piece[0]).'.'.$piece[1];
$result = move_uploaded_file($photo['tmp_name'][$i], $uploadfile);
if(!$result){
exit('上传失败');
return basename($uploadfile);
if($_POST['tijiao']){
extract($_POST);
foreach ($_FILES["pictures"]["error"] as $key =& $error) {
if ($error == UPLOAD_ERR_OK) {
upload_multi($email,$_FILES["pictures"],$i);
&script language="javascript"&
function go_up(){
document.getElementById('new_up').innerHTML+='&input type="file" name="pictures[]" /&&br&';
&form action="index.php" method="post" enctype="multipart/form-data"&
&p&多图片上传&/p&&br&
&input type="file" name="pictures[]" /&&br&
&div id="new_up"&&/div&
&input type="button"" name="add_img" value="新增上传" onclick="go_up()"/&&br&
&input type="submit" value="Send" name="tijiao"/&&br&
更多关于PHP相关内容感兴趣的读者可查看本站专题:《php文件操作总结》、《PHP运算与运算符用法总结》、《PHP网络编程技巧总结》、《PHP基本语法入门教程》、《php操作office文档技巧总结(包括word,excel,access,ppt)》、《php日期与时间用法总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。
转载请注明:破洛洛(谢谢合作)
上一篇文章: 下一篇文章:
网友评论:
[][][][][][][][][][]posts - 169,&
comments - 27,&
trackbacks - 0
1.表单部分&允许用户上传文件,在HTML表单的声明中要加上一个上传的属性:&enctype = 'multipart/form-data'&表单的method必须是POST&表单选项MAX_FILE_SIZE隐藏域用于限制上传文件大小,它必须放在文件表单元素前面,单位为字节。&如:&
复制代码代码如下:
&form enctype='multipart/form-data' id='aa' name='aaa' method='post' action='xxx.php'&&&input type='hidden' name='MAX_FILE_SIZE' value='2621114' /&&&input name='upload_file' type='file' /&&&/form&&
2.处理上传文件&上传时,PHP收到关于该文件的信息数组,这些信息可以在$_FILES这个超级全局数组中找到。&如:如果表单中的文件输入框名字为upload_file,那么关于该文件的所有信息都包含在数组$_FILES['upload_file']里面。&如:客户上传了一个&aaa.jpg&的图片数组值如下:&name "p5pp.jpg" 上传时文件的名字&type &image/jpeg" 文件类型&tmp_name "/tmp/phpjksdf" 服务器端的临时文件名&error 上传错误的返回值&size 2045 文件实际大小&上面数组里面的error会返回不同的常量值,如下:&UPLOAD_ERR_OK 没有错误发生,文件上传成功&UPLOAD_ERR_INI_SIZE 文件大小超过了PHP.INI中upload_max_filesize选项限制的值&UPLOAD_ERR_FORM_SIZE 上传文件的大小超过了HTML表单中MAX_FILE_SIZE选项值。可在程序中检查表单$FILES ['up_file']['size']来处理&UPLOAD_ERR_PARTIAL 文件只有部分被上传&UPLOAD_ERR_NO_FILE 用户没有提供任何文件上传&上传后处理的具体例子:&
复制代码代码如下:
if(!move_uploaded_file($_FILES['f']['tmp_name'],"uploads/".$_FILES['f']['name'].".jpg")){&echo "error";&}&
函数:&move_uploaded_file 移动上传的临时文件到指定的目录下&例子:&move_uploaded_file('临时文件名','指定文件路径')&is_uploaded_file 判断是否是通过http Post上传的文件&例子:&
复制代码代码如下:
if(!is_uploaded_file($_FILES['f']['tmp_name'])){&echo '非法';&}&
3.相关参数&PHP上传设计到的php.ini中的参数:&file_uploads 是否允许上传文件,默认ON&upload_tmp_dir 上传文件防止的临时目录,未指定则使用系统默认位置&upload_max_filesize 允许上传文件的大小的最大值,默认为2M&post_max_size 控制采用POST方法进行一次表单提交中PHP所能接受的最大数据量,如果希望用PHP文件上传,则此值要改为比upload_max_filesize要大&max_input_time 以秒为单位对通过POST/GET/PUT方式接受数据时间进行限制。&memory_limit 为了避免正在运行的脚本大量使用系统内存,PHP允许定义内存使用限额。通过设置此参数来制定单个脚本程序可以使用的最大内存容量,应适当大于post_max_size值&max_execution_time 用来设置在强制终止脚本前PHP等待脚本执行完毕的时间,单位秒。次选项可限制死循环脚本,但当存在一个长时间的合法活动时(如:上传大文件),这项功能也会导致操作失败。这样情况下必须考虑将此变量增加。&4.考虑多文件上传&可以利用$_FILES数组就可以轻松实现多文件上传。$_FILES数组可以获取客户端表单里面所有的file域内容,从而获得所有在同一表单上传的文件。&5.突破上传的内存限制&方法一:&修改php.ini中memory_limit值,改为更大,如 64M&方法二:&使用Apache Rewrite方法,动态修改memory_limit的值。首先建立一个.htaccess文件,保存在上传文件程序的 当前目录即可.代码如下:&php_value memory_limit 100M&php_value post_max_size 30M&php_value upload_max_filesize 30M&php_value max_execution_time 300&php_value max_input_tim 300&php_value display_errors On
阅读(...) 评论()}

我要回帖

更多关于 files php 上传为空 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信