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

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

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

标签:php,上传,图片
0
投稿

猜你喜欢

  • js实现通过开始结束控制的计时器

    2024-04-18 09:39:03
  • Python用摘要算法生成token及检验token的示例代码

    2022-05-30 10:22:10
  • Python模块WSGI使用详解

    2021-02-19 00:05:27
  • jsp+ajax实现无刷新上传文件的方法

    2024-04-17 10:39:30
  • ASP SCRIPT: 计数器(使用GrapShot组件)

    2008-11-07 15:36:00
  • python列表的切片与复制示例分析

    2023-07-15 02:12:34
  • javascript用回车键实现Tab键功能

    2009-07-05 18:40:00
  • MSSQL2005在networkservice权限运行附加数据库报(Microsoft SQL Server,错误: 5120)

    2024-01-23 00:09:51
  • Vue中的Object.defineProperty全面理解

    2024-05-29 22:44:02
  • Python单例模式实例分析

    2023-11-26 03:22:52
  • sql server中datetime字段去除时间的语句

    2024-01-23 17:47:57
  • python读取指定字节长度的文本方法

    2022-04-17 10:42:45
  • python+django加载静态网页模板解析

    2022-06-14 16:58:47
  • 利用python做数据拟合详情

    2023-04-22 15:32:17
  • python面向对象之类属性和类方法案例分析

    2022-01-18 06:00:36
  • 用python实现面向对像的ASP程序实例

    2023-05-19 04:20:55
  • python文件操作的基础详细讲解(write、read、readlines、readline)

    2021-04-05 19:31:44
  • Python实现手写一个类似django的web框架示例

    2022-06-18 03:17:26
  • python中pass语句用法实例分析

    2021-08-12 01:49:13
  • 解决pygal.style的LightColorizedStyle参数问题

    2023-09-20 06:39:02
  • asp之家 网络编程 m.aspxhome.com