首页 > 编程 > PHP > 正文

php和html结合实现上传图片文件到服务器的代码

2020-03-22 18:26:46
字体:
来源:转载
供稿:网友
本篇文章给大家带来的内容是关于php和html结合实现上传图片文件到服务器的代码,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

一.html代码

 body  form action= method= post enctype= multipart/form-data name= upload_form  label 选择图片文件 /label  input name= imgfile type= file accept= image/gif, image/jpeg /  input name= upload type= submit value= 上传 /  /form  /body 

二.php代码

if (isset($_FILES[ imgfile ])  is_uploaded_file($_FILES[ imgfile ][ tmp_name ])) $imgFile = $_FILES[ imgfile $upErr = $imgFile[ error if ($upErr == 0)$imgType = $imgFile[ type //文件类型。/* 判断文件类型,这个例子里仅支持jpg和gif类型的图片文件。*/if ($imgType == image/jpeg || $imgType == image/gif )$imgFileName = $imgFile[ name $imgSize = $imgFile[ size $imgTmpFile = $imgFile[ tmp_name  将文件从临时文件夹移到上传文件夹中。注意:upfile这个文件夹必须先创建好,不然会报错。move_uploaded_file($imgTmpFile, upfile/ .$imgFileName);/*显示上传后的文件的信息。*/$strPrompt = sprintf( 文件%s上传成功 br . 文件大小: %s字节 br . img src= upfile/%s , $imgFileName, $imgSize, $imgFileNameecho $strPrompt;echo 请选择jpg或gif文件,不支持其它类型的文件。 echo 文件上传失败。 br switch ($upErr)case 1: echo 超过了php.ini中设置的上传文件大小。 break;case 2: echo 超过了MAX_FILE_SIZE选项指定的文件大小。 break;case 3: echo 文件只有部分被上传。 break;case 4: echo 文件未被上传。 break;case 5: echo 上传文件大小为0 break;}

三.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,表示上传失败,显示失败信息。

四.完整代码

 !DOCTYPE html  html  head  meta http-equiv= Content-Type content= text/html; charset=utf-8 /  title 上传图片文件 /title  /head  ?phpif (isset($_FILES[ imgfile ])  is_uploaded_file($_FILES[ imgfile ][ tmp_name ])) $imgFile = $_FILES[ imgfile $upErr = $imgFile[ error if ($upErr == 0)$imgType = $imgFile[ type //文件类型。/* 判断文件类型,这个例子里仅支持jpg和gif类型的图片文件。*/if ($imgType == image/jpeg || $imgType == image/gif )$imgFileName = $imgFile[ name $imgSize = $imgFile[ size $imgTmpFile = $imgFile[ tmp_name /* 将文件从临时文件夹移到上传文件夹中。*/move_uploaded_file($imgTmpFile, upfile/ .$imgFileName);/*显示上传后的文件的信息。*/$strPrompt = sprintf( 文件%s上传成功 br . 文件大小: %s字节 br . img src= upfile/%s , $imgFileName, $imgSize, $imgFileNameecho $strPrompt;echo 请选择jpg或gif文件,不支持其它类型的文件。 echo 文件上传失败。 br switch ($upErr)case 1: echo 超过了php.ini中设置的上传文件大小。 break;case 2: echo 超过了MAX_FILE_SIZE选项指定的文件大小。 break;case 3: echo 文件只有部分被上传。 break;case 4: echo 文件未被上传。 break;case 5: echo 上传文件大小为0 break;/*显示表单。*/ body  form action= method= post enctype= multipart/form-data name= upload_form  label 选择图片文件 /label  input name= imgfile type= file accept= image/gif, image/jpeg /  input name= upload type= submit value= 上传 /  /form  /body  ?php /html 

相关文章推荐:

php类型约束是什么?php类型约束简介和用法

php中删除数组一个元素和从数组中删除多个元素的方法总结(附代码)

以上就是php和html结合实现上传图片文件到服务器的代码的详细内容,PHP教程

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表