分享编程~
 

HTML PHP文件上传(一) 注意事项

通过form表单input标签设置type属性为file实现创建FileUpload 对象可以上传文件…

天天特卖抢好货

通过form表单input标签设置type属性为file实现创建FileUpload 对象可以上传文件,但是需要注意的点是:

1、表单提交方式需要是 post

2、form 添加一个属性为 enctype="multipart/form-data"

html如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>HTML文件上传(一) 注意事项</title>
</head>
<body>
	<form action="upload.php" method="post" enctype="multipart/form-data">
		<p><input type="file" name="file_name"></p>
		<p><input type="submit" value="提交"></p>
	</form>
</body>
</html>


后端接收以php为例,upload.php 代码如下:

<?php 

// 文件上传方法
function file_upload(){
	$result = array('code'=>40000,'msg'=>'失败');
	if(!isset($_FILES) || !$_FILES){
		return $result;
	}
	$path = './uploads/'; // 上传路径
	$newname = date('YmdHis'); // 保存的文件名
	$suffix = strtolower(pathinfo($_FILES["file_name"]["name"], PATHINFO_EXTENSION)); // 文件后缀
	$newFilePath = $path.$newname.'.'.$suffix;

	// 将上传的文件移动到新位置
	if(!move_uploaded_file($_FILES["file_name"]["tmp_name"],$newFilePath)){
		$result['code'] = 30000;
		$result['msg'] = '文件上传出错了';
		return $result;
	}
	$result['code'] = 10000;
	$result['msg'] = '文件上传成功';
	$result['path'] = $newFilePath;
	return $result;
}

// 调用文件上传方法
$result = file_upload();
print_r($result); 
exit;

?>


上传成功后会获得文件路径

Array
(
    [code] => 10000
    [msg] => 文件上传成功
    [path] => ./uploads/20200423220359.jpg
)


扩展资料:

一、关于HTML <form> 标签的 enctype 属性

1、application/x-www-form-urlencoded:在发送前编码所有字符(默认)。

2、multipart/form-data:    不对字符编码,或在使用包含文件上传控件的表单时,必须使用该值。

3、text/plain:空格转换为 " " 加号,但不对特殊字符编码。

二、enctype:规定了form表单在发送到服务器时候编码方式,有如下的三个值。

1、application/x-www-form-urlencoded。默认的编码方式。但是在用文本的传输和MP3等大型文件的时候,使用这种编码就显得 效率低下。 

2、multipart/form-data 。 指定传输数据为二进制类型,比如图片、mp3、文件。 

3、text/plain。纯文体的传输。空格转换为 “ ” 加号,但不对特殊字符编码。


上一篇:其他标签代理file 代理选择文件按钮“<input type="file">”下一篇:HTML PHP文件上传(二) iframe文件异步上传
赞(0) 踩(0)
您说多少就多少,您的支持是我最大的动力
赏金
微 信
赏金
支付宝
本文连接: https://www.yj521.com/article/32.html
版权声明: 本文为原创文章,版权归《越加网》所有,分享转载请注明出处!