PHP中怎么上传多张图片

发布时间:2021-06-30 15:02:30 作者:Leah
来源:亿速云 阅读:128

这篇文章将为大家详细讲解有关PHP中怎么上传多张图片,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

基本实现算法是使用数组的形式,把所有的图片提交个一个数组,对数组的元素进行一个个的处理。PHP其实不过是Web服务器的一个模块功能,所以首先要保证Web服务器的安全。当然Web服务器要安全又必须是先保证系统安全,这样就扯远了,无穷无尽。PHP可以和各种Web服务器结合,这里也只讨论Apache。非常建议以chroot方式安装启动Apache,这样即使Apache和PHP及其脚本出现漏洞,受影响的也只有这个禁锢的系统,不会危害实际系统。以下为引用的内容:

  1. <?php 

  2.  

  3. //图片目录  

  4. $img_dir="../upload/";  

  5. //……html显示上传界面  

  6.  

  7. /*图片上传处理*/  

  8. //把图片传到服务器  

  9. //初始化变量  

  10.  

  11. $uploaded=0;  

  12. $unuploaded=0;  

  13.  

  14. //只允许五张图片上传  

  15.  

  16. for($i=0;$i<=5;$i++)  

  17. {  

  18. //获取当前图片的信息  

  19. $is_file=$_FILES['imgfile']['name'][$i];  

  20. //如果当前图片不为空  

  21. if(!empty($is_file))  

  22. {  

  23. //把当前图片的信息存储到变量里  

  24. $result[$i]="  

  25. <trclasstrclass=td2align=center> 

  26. <td>".$_FILES['imgfile']['name'][$i]."</td> 

  27. <td>".round($_FILES['imgfile']['size'][$i]/1024,2)."K</td> 

  28. <td>".$_FILES['imgfile']['type'][$i]."</td> 

  29. <td>";  

  30.  

  31. //判断上传的图片的类型是不是jpg,gif,png,bmp中的一种,同时判断是否上传成功  

  32. if(  

  33.  

  34. $_FILES['imgfile']['type'][$i]=="image/pjpeg"||  

  35. $_FILES['imgfile']['type'][$i]=="image/gif"||  

  36. $_FILES['imgfile']['type'][$i]=="image/x-png"||  

  37. $_FILES['imgfile']['type'][$i]=="image/bmp"  

  38. )  

  39. {  

  40. //如果上传的文件没有在服务器上存在  

  41. if(!file_exists($img_dir.$_FILES['imgfile']['name'][$i]))  

  42. {  

  43. //把图片文件从临时文件夹中转移到我们指定上传的目录中  

  44. move_uploaded_file($_FILES['imgfile']['tmp_name'][$i],  

  45. $img_dir.$_FILES['imgfile']['name'][$i]);  

  46. $result[$i].="成功";  

  47. $uploaded++;  

  48. }  

  49. else//如果文件已经在服务器上存在  

  50. {  

  51. $result[$i].="<fontcolor=red>文件已存在</font>";  

  52. $unuploaded++;  

  53. continue;  

  54. }  

  55. }  

  56. else  

  57. {  

  58. $result[$i].="<fontcolor=red>失败</font>";  

  59. $unuploaded++;  

  60. }  

  61. $result[$i].="</td></tr>";  

  62. }//endif  

  63. }//endfor  

  64.  

  65.  

  66. //如果没有选择任何图片  

  67. if(empty($result))  

  68. {  

  69. prompt_msg("错误信息","没有选择任何图片。","返回上一步","uploadimg.php?action=upload");  

  70. exit();  

  71. }  

  72.  

  73. //显示所有上传后的结果  

  74. echo"<tablecellpaddingtablecellpadding=4cellspacing=1border=0class=tablewidth=400align=left> 

  75. <trclasstrclass=navialign=center> 

  76. <td>文件名</td> 

  77. <td>大小</td> 

  78. <td>类型</td> 

  79. <td>上传结果</td> 

  80. </tr> 

  81. ";  

  82.  

  83. foreach($resultas$value)  

  84. {  

  85. echo$value;  

  86. }  

  87.  

  88. echo"<trclasstrclass=td1> 

  89. <tdcolspantdcolspan=4>共上传".($uploaded+$unuploaded).",成功:$uploaded,失败:<fontcolorfontcolor=red>$unuploaded</font></td> 

  90. </tr> 

  91. <trclasstrclass=navi> 

  92. <tdcolspantdcolspan=4align=center>[<ahrefahref='uploadimg.php?action=upload'title='继续上传'>继续上传</a>]
    &nbsp;&nbsp;&nbsp;&nbsp;[<ahrefahref='image.php'title='浏览图片'>浏览图片</a>]</td> 

  93. </tr> 

  94. </table> 

  95. ";  

  96. ?> 

关于PHP中怎么上传多张图片就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

推荐阅读:
  1. 多张图片上传简单示例
  2. Alamofire +ObjectMapper模型: 上传单张图片,上传多张图片。

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

php

上一篇:jquery+ajax的多文件上传进度条如何实现

下一篇:vue2.0如何实现音乐/视频播放进度条组件

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》