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'];
二、判断条件是否符合
-
if判断条件是否符合
-
设置上传类型
-
设置接收类型
if ($shangchuan['type'] == "image/jpg" or $shangchuan['type'] == "text/plain")
- 判断不符合输出–失败 类型不符,判断符合自动跳过执行下一命令
{echo '失败--类型不符';
die();}
- 判断大小是否符合
if ($shangchuan['size'] > 800000)
- 判断不符合输出–失败 类型不符,判断符合自动跳过执行下一命令
{echo '失败--大小不符';
die();}
三、设置文件存放路径
- 设置上传文件的存放路径
copy($shangchuan['tmp_name'], 'D:\\' . $shangchuan['name']);echo '输出:成功';
- 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工具的前提下,打开浏览器输入路径
- 点击选择文件
- 提交
- 查看上传图片
我这里存在D盘根目录下,
大功告成,完成上传。