剖析PHP中多张图片上传并校验的实现
发布时间:2022-04-05 11:22 所属栏目:121 来源:互联网
导读:单张的图片上传是不复杂的,这里涉及到多张图片上传和对图片格式的校验,保证上传的一定是图片,防止上传其他文件到服务器。 基本实现算法是使用数组的形式,把所有的图片提交个一个数组,对数组的元素进行一个个的处理。 ?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> <td>"; // 判断上传的图片的类型是不是jpg,gif,png,bmp中的一种,同时判断是否上传成功 if ( _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>"; // 如果没有选择任何图片 if (empty(result)) { prompt_msg("错误信息", "没有选择任何图片。", "返回上一步", "uploadimg.php?action=upload" ); exit(); } // 显示所有上传后的结果。 (编辑:ASP站长网) |
相关内容
网友评论
推荐文章
热点阅读