源码论坛公告:本站是一个交流学习建站资源的社区论坛,旨在交流学习源码脚本等资源技术,欢迎大家投稿发言! 【点击此处将锦尚放在桌面

源码论坛,商业源码下载,尽在锦尚中国商业源码论坛

 找回密码
 会员注册

QQ登录

只需一步,快速开始

查看: 6623|回复: 0

[PHP编程] 完整可用的上传图片的php代码

[复制链接]

3106

主题

3507

帖子

13万

金币

超级版主

Rank: 8Rank: 8

积分
275673
发表于 2022-10-23 23:47:08 | 显示全部楼层 |阅读模式

直接粘贴处代码吧,直接可以拿去用的(我自己做了一下加工,将文件名保存到了一个php文档内):

  1. <?php
  2.   $uptypes=array('image/png','image/gif');
  3.   $addtime=date("Ym",time());
  4.   $testdir="./images/";
  5.   if(file_exists($testdir)):
  6.   else:
  7.   mkdir($testdir,0777);
  8.   endif;
  9.   $max_file_size=2097152;     //上传文件大小限制, 单位BYTE   
  10.   $destination_folder=$testdir; //上传文件路径   
  11.   $imgpreview=1;      //是否生成预览图(1为生成,其他为不生成);   
  12.   $imgpreviewsize=1/2;    //缩略图比例   
  13. ?>
  14. <form enctype="multipart/form-data" method="POST" name="upform">
  15. <input name="upfile" type="file">
  16. <input type="submit" value="上传"><br>
  17. <div></div>注意:允许上传的文件类型为:<?=implode(',',$uptypes)?>
  18. </form>
  19.     <?php
  20.     if ($_SERVER['REQUEST_METHOD'] == 'POST')
  21.     {
  22.         if (!is_uploaded_file($_FILES["upfile"]["tmp_name"]))
  23.         //是否存在文件   
  24.         {
  25.              echo "图片不存在!";
  26.              exit;
  27.         }
  28.         $file = $_FILES["upfile"];
  29.         if($max_file_size < $file["size"])
  30.         //检查文件大小   
  31.         {
  32.             echo "文件太大!";
  33.             exit;
  34.         }
  35.         if(!in_array($file["type"], $uptypes))
  36.         //检查文件类型   
  37.         {
  38.             echo "文件类型不符!".$file["type"];
  39.             exit;
  40.         }
  41.         if(!file_exists($destination_folder))
  42.         {
  43.             mkdir($destination_folder);
  44.         }
  45.         $filename=$file["tmp_name"];
  46.                
  47.         $image_size=getimagesize($filename);
  48.         $pinfo=pathinfo($file["name"]);
  49.         $ftype=$pinfo['extension'];
  50.         $destination = $destination_folder.time().".".$ftype;
  51.         if (file_exists($destination) && $overwrite != true)
  52.         {
  53.             echo "同名文件已经存在了";
  54.             exit;
  55.         }
  56.         if(!move_uploaded_file ($filename, $destination))
  57.         {
  58.             echo "移动文件出错";
  59.             exit;
  60.         }
  61.         $pinfo=pathinfo($destination);
  62.         $fname=$pinfo["basename"];
  63.         echo " <font color=red>已经成功上传</font><br>文件名:  <font color=blue>".$destination_folder.$fname."</font><br>";
  64.         echo " 宽度:".$image_size[0];
  65.         echo " 长度:".$image_size[1];
  66.         echo "<br> 大小:".$file["size"]." bytes";
  67.         if($imgpreview==1)
  68.         {
  69.         echo "<br>图片预览:<br>";
  70.         echo "<img src="".$destination."" width=".($image_size[0]*$imgpreviewsize)." height=".($image_size[1]*$imgpreviewsize);
  71.         echo " title="图片预览:\r文件名:".$destination."\r上传时间:">";
  72.         }
  73.                 $file = fopen('config_logo.php', 'w+');
  74.         ftruncate($file, 0);
  75.         $content = '<?php '.'$site_logo = "'.$fname.'";';
  76.         fwrite($file , $content);
  77.         fclose($file );
  78.     }
  79.     ?>
复制代码
您需要登录后才可以回帖 登录 | 会员注册

本版积分规则

锦尚中国源码论坛

聚合标签|锦尚中国,为中国网站设计添动力 ( 鲁ICP备09033200号 ) |网站地图

GMT+8, 2024-6-23 05:50 , Processed in 0.126457 second(s), 25 queries .

带宽由 锦尚数据 提供 专业的数据中心

© 锦尚中国源码论坛 52jscn Inc. 非法入侵必将受到法律制裁 法律顾问:IT法律网 & 褚福省律师 锦尚爱心 版权申诉 版权与免责声明