版权声明:知末随未 https://blog.csdn.net/mo3408/article/details/84890651
无论上传哪种文件,道理是一样的,如果需要路径,就直接把存放的路径插入数据库就可以。
1.控制器代码:
<?php
namespace app\index\controller;
use think\Controller;
use think\Request;
class Index extends Controller
{
//文件上传表单
public function index()
{
return $this->fetch();
}
//文件上传提交
public function upload()
{
//获取表单上传文件
$file = request()->file('files');
// echo $file;exit;
if (empty($file)) {
$this->error('请选择上传文件');
}
//移动到框架应用根目录/public/uploads/ 目录下
$info = $file->move(ROOT_PATH . 'public' . DS . 'uploads');
if ($info) {
echo $info->getFilename(); //随机生成的文件名
$this->success('文件上传成功');
} else {
//上传失败获取错误信息
$this->error($file->getError());
}
}
}
页面:
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>文件上传</title>
</head>
<body>
<h2>文件上传</h2>
<FORM method="post" enctype="multipart/form-data" class="form" action="{:url('upload')}">选择文件:
<INPUT type="file" class="files" name="files"><br/>
<INPUT type="submit" class="btn" value=" 提交 ">
</FORM>
</body>
</html>