分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 技术分享

html+php上传图片文件到服务器

发布时间:2023-09-06 02:09责任编辑:胡小海关键词:上传图片

html+php上传图片文件到服务器

一.html代码

1 <body>2 <form action="" method="post" enctype="multipart/form-data" name="upload_form">3 ?<label>选择图片文件</label>4 ?<input name="imgfile" type="file" accept="image/gif, image/jpeg"/>5 ??<input name="upload" type="submit" value="上传" />6 </form>7 </body>

二.php代码

 1 if (isset($_FILES[‘imgfile‘]) ?2 && is_uploaded_file($_FILES[‘imgfile‘][‘tmp_name‘])) 3 { 4 ?$imgFile = $_FILES[‘imgfile‘]; 5 $upErr = $imgFile[‘error‘]; 6 if ($upErr == 0) 7 { 8 $imgType = $imgFile[‘type‘]; //文件类型。 9 /* 判断文件类型,这个例子里仅支持jpg和gif类型的图片文件。*/10 if ($imgType == ‘image/jpeg‘11 || $imgType == ‘image/gif‘)12 {13 $imgFileName = $imgFile[‘name‘];14 $imgSize = $imgFile[‘size‘];15 $imgTmpFile = $imgFile[‘tmp_name‘];16 /*17 ?将文件从临时文件夹移到上传文件夹中。18 注意:upfile这个文件夹必须先创建好,不然会报错。19 */20 move_uploaded_file($imgTmpFile, ‘upfile/‘.$imgFileName);21 /*显示上传后的文件的信息。*/22 $strPrompt = sprintf("文件%s上传成功<br>"23 . "文件大小: %s字节<br>"24 . "<img src=‘upfile/%s‘>"25 , $imgFileName, $imgSize, $imgFileName26 );27 echo $strPrompt;28 }29 else30 {31 echo "请选择jpg或gif文件,不支持其它类型的文件。";32 }33 }34 else35 {36 echo "文件上传失败。<br>";37 switch ($upErr)38 {39 case 1:40 ?echo "超过了php.ini中设置的上传文件大小。";41 break;42 case 2:43 ?echo "超过了MAX_FILE_SIZE选项指定的文件大小。";44 break;45 case 3:46 ?echo "文件只有部分被上传。";47 break;48 case 4:49 ?echo "文件未被上传。";50 break;51 case 5:52 ?echo "上传文件大小为0";53 break;54 }55 }56 }57 else58 {59 }

三.php代码分析:

$_FILES是一个数组变量,用于保存上传后的文件信息。

$_FILES[‘imgfile‘]表示文件域名称为‘imgfile‘的控件提交服务器后,上传的文件的信息。

一个上传的文件,有以下属性信息:

‘name‘: 上传的文件在客户端的名称。

‘type‘: 文件的 MIME 类型,例如"image/jpeg"。

‘size‘: 已上传文件的大小,单位为字节。

‘tmp_name‘:上传时,在服务器端,会把上传的文件保存到一个临时文件夹中,可以通过此属性得到临时文件名。

‘error‘:文件在上传过程中的错误代码。如果上传成功,此值为0,其它值的意义如下:

 1:超过了php.ini中设置的上传文件大小。

  2:超过了MAX_FILE_SIZE选项指定的文件大小。

  3:文件只有部分被上传。

  4:文件未被上传。

  5:上传文件大小为0。

代码中首先判断$_FILES[‘imgfile‘]变量是否存在,如果存在,并且$_FILES[‘imgfile‘][‘tmp_name‘]变量所指文件被上传了,判断error属性,如果属性为0,把上传后的图像从临时文件夹移到upfile文件夹中,显示上传文件的信息,并显示上传后的图像。

如果error值不为0,表示上传失败,显示失败信息。

四.完整代码

 1 <!DOCTYPE html > 2 <html lang="en"> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 5 <title>上传图片文件</title> 6 </head> 7 <?php 8 if (isset($_FILES[‘imgfile‘]) ?9 && is_uploaded_file($_FILES[‘imgfile‘][‘tmp_name‘]))10 {11 ?$imgFile = $_FILES[‘imgfile‘];12 $upErr = $imgFile[‘error‘];13 if ($upErr == 0)14 {15 $imgType = $imgFile[‘type‘]; //文件类型。16 /* 判断文件类型,这个例子里仅支持jpg和gif类型的图片文件。*/17 if ($imgType == ‘image/jpeg‘18 || $imgType == ‘image/gif‘)19 {20 $imgFileName = $imgFile[‘name‘];21 $imgSize = $imgFile[‘size‘];22 $imgTmpFile = $imgFile[‘tmp_name‘];23 /* 将文件从临时文件夹移到上传文件夹中。*/24 move_uploaded_file($imgTmpFile, ‘upfile/‘.$imgFileName);25 /*显示上传后的文件的信息。*/26 $strPrompt = sprintf("文件%s上传成功<br>"27 . "文件大小: %s字节<br>"28 . "<img src=‘upfile/%s‘>"29 , $imgFileName, $imgSize, $imgFileName30 );31 echo $strPrompt;32 }33 else34 {35 echo "请选择jpg或gif文件,不支持其它类型的文件。";36 }37 }38 else39 {40 echo "文件上传失败。<br>";41 switch ($upErr)42 {43 case 1:44 ?echo "超过了php.ini中设置的上传文件大小。";45 break;46 case 2:47 ?echo "超过了MAX_FILE_SIZE选项指定的文件大小。";48 break;49 case 3:50 ?echo "文件只有部分被上传。";51 break;52 case 4:53 ?echo "文件未被上传。";54 break;55 case 5:56 ?echo "上传文件大小为0";57 break;58 }59 }60 }61 else62 {63 /*显示表单。*/64 ?>65 <body>66 <form action="" method="post" enctype="multipart/form-data" name="upload_form">67 ?<label>选择图片文件</label>68 ?<input name="imgfile" type="file" accept="image/gif, image/jpeg"/>69 ??<input name="upload" type="submit" value="上传" />70 </form>71 </body>72 <?php73 }74 ?>75 </html>

记录时间:2018年8月8日19:55:27

html+php上传图片文件到服务器

原文地址:https://www.cnblogs.com/lygz/p/9445314.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved