文件上传
2018-08-20 本文已影响10人
大菜鸟呀
HTML
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>文件上传</title>
</head>
<body>
<h3>文件上传</h3>
<form action="shangchuan.php" method="POST" enctype="multipart/form-data">
<p>请选择文件:</p>
<p>
<input type="file" name="files">
</p>
<p>
<input type="submit" value="上传">
</p>
</form>
</body>
</html>
PHP
<?php
//文件上传
//move_uploaded_file(filename, destination)
//print_r($_FILES)
header('content-type:text/html;charset=utf-8');
$files=$_FILES['files']['tmp_name']; //上传文件路径
//$fileNames='dirs/'.$_FILES['files'][name]; //新文件名字
//创建日期目录
$dateDir='dirs/'.'/'.date('Y').'-'.date('m').'-'.date('d');
if(!file_exists($dateDir)){
mkdir($dateDir);
}
//获取文件后缀名
$fext=array_pop(explode('.',$_FILES['files']['name']));
//创建名字
$names=time().'66'.mt_rand();
$fileNames=$dateDir.'/'.$names.'.'.$fext;
//获取文件大小
$fileSizes=$_FILES['files']['size'];
//限制文件类型
$fileType=array('jpg','png','jpeg');
//限制文件大小
$sizes=1*1024*1024;
if(in_array($fext, $fileType)){
if($fileSizes<$sizes){
move_uploaded_file($files,$fileNames);
}else{
echo "<script>alert('文件超过1M')</script>";
}
}else{
echo "<script>alert('文件类型不正确')</script>";
}
//储存文件
?>
1、更改apache文件上传的大小:
bin->apache->bin->php.ini文件:
post_max_size = 3M
2、更改input上传的大小限制
bin->php->php.ini文件:
upload_max_filesize = 64M
3、更改from上传的大小限制:
bin->php->php.ini文件:
post_max_size = 3M
4、上传错误码:
0:上传成功
1:超过input[type='file']是最大上传值
4:未上传任何内容