网络编程
位置:首页>> 网络编程>> php编程>> 如何利用PHP实现上传图片功能详解

如何利用PHP实现上传图片功能详解

作者:婷婷的橙子  发布时间:2024-05-09 14:48:10 

标签:php,上传,图片

HTML文件

一、 设置编码UTF-8

对于中文网页需要使用<meta charset="utf-8">声明编码,否则会出现乱码。

二 、form表单 <form>标签用于为用户输入创建 HTML 表单,表单里包含php文件路径,


<form action="1.php">

设置编码类型,

需要注意的是:默认情况下,enctype的值是application/x-www-form-urlencoded,不能用于文件上传,只有使用了multipart/form-data,才能完整的传递文件数据,


<form action="1.php" enctype="multipart/form-data">

配置数据传输方式,


<form action="1.php" enctype="multipart/form-data" method="POST">

三、input输入框 文本输入框通过<input>标签来设定添加上传属性


type="file" name="file"

设定提交按钮


<input type="submit" value="上传">

HTML文件编辑完成


<html>
<head>
<meta charset="UTF-8">
<title>上传</title>
</head>
<body>
<form action="3.php" enctype="multipart/form-data" method="post" >

请选择上传文件:<input type="file" name="file">
    <input type="submit">
</form>
</body>
</html>

PHP文件

一、获取文件信息 获取文件信息(获取一个数组的信息)


$shangchuan = $_FILES['file'];

如何利用PHP实现上传图片功能详解

二、判断条件是否符合

1、if判断条件是否符合

2、设置上传类型

3、设置接收类型


if ($shangchuan['type'] == "image/jpg" or $shangchuan['type'] == "text/plain")

4、判断不符合输出–失败 类型不符,判断符合自动跳过执行下一命令


{echo '失败--类型不符';
die();}

如何利用PHP实现上传图片功能详解

5、判断大小是否符合


if ($shangchuan['size'] > 800000)

6、判断不符合输出–失败 类型不符,判断符合自动跳过执行下一命令


{echo '失败--大小不符';
 die();}

如何利用PHP实现上传图片功能详解

三、设置文件存放路径 设置上传文件的存放路径


copy($shangchuan['tmp_name'], 'D:\\' . $shangchuan['name']);echo '输出:成功';

如何利用PHP实现上传图片功能详解

PHP文件编写完成:


<?php
//1、设置编码utf8
header("Content-Type: text/html; charset=UTF-8");
//2、获取文件信息
$shangchuan = $_FILES['file'];
if ($shangchuan['type'] == "image/jpg" or $shangchuan['type'] == "text/plain") {
 //9、输出:失败
 echo '失败--类型不符';
 die();
}
if ($shangchuan['size'] > 800000) {
 //9、输出:失败
 echo '失败--大小不符';
 die();
}
//7、移动临时文件到上传的文件存放位置(核心代码)
copy($shangchuan['tmp_name'], 'D:\\' . $shangchuan['name']);
//8、输出:成功
echo '输出:成功';
?>

运行测试

一、上传文件

在开启phpstudy_pro工具的前提下,打开浏览器输入路径

如何利用PHP实现上传图片功能详解

点击选择文件

如何利用PHP实现上传图片功能详解

提交

如何利用PHP实现上传图片功能详解

查看上传图片

我这里存在D盘根目录下,

如何利用PHP实现上传图片功能详解

大功告成,完成上传。

来源:https://blog.csdn.net/ChenTing_/article/details/108738496

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com