thinkphp表单上传文件并将文件路径保存到数据库中


Posted in PHP onJuly 28, 2016

上传单个文件,此文以上传图片为例,上传效果如图所示

thinkphp表单上传文件并将文件路径保存到数据库中

创建数据库upload_img,用于保存上传路径

CREATE TABLE `seminar_upload_img` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`img_name` varchar(255) DEFAULT NULL COMMENT '图片名称',
`img_url` varchar(255) DEFAULT NULL COMMENT '图片路径',
`create_time` text,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=23 DEFAULT CHARSET=utf8;

在公共配置文件Common/Conf.php中连接数据库,并配置地址

return array(
'DB_TYPE'=>'mysql',
'DB_HOST'=>'127.0.0.1',
'DB_NAME'=>'seminar',
'DB_USER'=>'root',
'DB_PWD'=>'root',
'DB_PORT'=>3306,
'DB_PREFIX'=>'seminar_',
'DB_CHARSET'=>'utf8',
'SHOW_PAGE_TRACE'=>true,
/*地址替换*/
'TMPL_PARSE_STRING'=>array(
'__UPLOAD__'=>__ROOT__.'/Public/Uploads',
),
);

视图文件Upload/index.html中

<!DOCTYPE html>
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style type="text/css">
#img{height:22px; border:#000 2px solid}
#button{height:30px; width:100px;}
</style>
</head>
<body>
<div><notemply name="data">
<img src="__UPLOAD__/{$data['img_url']}" width="200" height="100"/>
</notemply></div>
<div class="result" >上传允许文件类型:'jpg', 'gif', 'png', 'jpeg'图像文件后</div><br>
<form action="{:U('upload/Upload')}" method="post" enctype="multipart/form-data">
<input type="file" name="image"/>
<input type="submit" value="上传" id="button">
</form>
</body>
</html>

控制器UploadController.class.php中实现上传文件

namespace Home\Controller;
use Think\Controller;
class UploadController extends Controller {
public function index() {
$img=M('upload_img');
$sel=$img->order('create_time desc')->find();
$this->assign('data', $sel);
$this->display();
}
public function upload(){
$upload_img=M('upload_img');
if(!empty($_FILES)){
//上传单个图像
$upload = new \Think\Upload();// 实例化上传类
$upload->maxSize = 1*1024*1024 ;// 设置附件上传大小
$upload->exts = array('jpg', 'gif', 'png', 'jpeg');// 设置附件上传类型
$upload->rootPath = 'Public/Uploads/'; // 设置附件上传根目录
$upload->savePath = ''; // 设置附件上传(子)目录
$upload->saveName=array('uniqid','');//上传文件的保存规则
$upload->autoSub = true;//自动使用子目录保存上传文件 
$upload->subName = array('date','Ymd');
// 上传单个图片
$info = $upload->uploadOne($_FILES['image']);
if(!$info) {// 上传错误提示错误信息
$this->error($upload->getError());
}else{// 上传成功 获取上传文件信息
$img_url=$info['savepath'].$info['savename'];
$data['img_url']=$img_url;
$data['img_name']=$info['savename'];
$data['create_time']=NOW_TIME;
$upload_img->create($data);
$result=$upload_img->add();
if(!$result){
$this->error('上传失败!');
}else{
$this->success('上传成功');
}
}
}
}
}

以上所述是小编给大家介绍的thinkphp表单上传文件并将文件路径保存到数据库中,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
ajax缓存问题解决途径
Dec 06 PHP
php中支持多种编码的中文字符串截取函数!
Mar 20 PHP
实用函数8
Nov 08 PHP
通过PHP修改Linux或Unix口令的方法分享
Jan 30 PHP
PHP实现AES256加密算法实例
Sep 22 PHP
php单态设计模式(单例模式)实例
Nov 18 PHP
PDO防注入原理分析以及注意事项
Feb 25 PHP
php简单获取目录列表的方法
Mar 24 PHP
PHP创建word文档的方法(平台无关)
Mar 29 PHP
PHP性能分析工具xhprof的安装使用与注意事项
Dec 19 PHP
Lumen timezone 时区设置方法(慢了8个小时)
Jan 20 PHP
PHP与Web页面的交互示例详解二
Aug 04 PHP
thinkphp验证码的实现(form、ajax实现验证)
Jul 28 #PHP
Thinkphp3.2.3分页使用实例解析
Jul 28 #PHP
thinkphp3.2.3 分页代码分享
Jul 28 #PHP
php实现带读写分离功能的MySQL类完整实例
Jul 28 #PHP
PHP实现带重试功能的curl连接示例
Jul 28 #PHP
php使用strip_tags()去除html标签仍有空白的解决方法
Jul 28 #PHP
php倒计时出现-0情况的解决方法
Jul 28 #PHP
You might like
BBS(php &amp; mysql)完整版(一)
2006/10/09 PHP
php基于session锁防止阻塞请求的方法分析
2017/08/07 PHP
关于PhpStorm设置点击编辑文件自动定位源文件的实现方式
2020/12/30 PHP
HTML中事件触发列表与解说
2007/07/09 Javascript
用jquery实现点击栏目背景色改变
2012/12/10 Javascript
js判读浏览器是否支持html5的canvas的代码
2013/11/18 Javascript
Javascript浮点数乘积运算出现多位小数的解决方法
2014/02/17 Javascript
javascript中字体浮动效果的简单实例演示
2015/11/18 Javascript
Bootstrap每天必学之导航
2015/11/26 Javascript
基于javascript实现checkbox复选框实例代码
2016/01/28 Javascript
微信小程序 开发之滑块视图容器(swiper)详解及实例代码
2017/02/22 Javascript
easyui datagrid 表格中操作栏 按钮图标不显示的解决方法
2017/07/27 Javascript
vue中appear的用法
2017/08/17 Javascript
webpack写jquery插件的环境配置
2017/12/21 jQuery
layui实现点击按钮给table添加一行
2018/08/10 Javascript
vue webpack开发访问后台接口全局配置的方法
2018/09/18 Javascript
[06:53]2018DOTA2国际邀请赛寻真——为复仇而来的Newbee
2018/08/15 DOTA
python实现同时给多个变量赋值的方法
2015/04/30 Python
Django 路由控制的实现代码
2018/11/08 Python
Python基础之条件控制操作示例【if语句】
2019/03/23 Python
python操作openpyxl导出Excel 设置单元格格式及合并处理代码实例
2019/08/27 Python
python lambda表达式(匿名函数)写法解析
2019/09/16 Python
python对验证码降噪的实现示例代码
2019/11/12 Python
使用ITK-SNAP进行抠图操作并保存mask的实例
2020/07/01 Python
python3中布局背景颜色代码分析
2020/12/01 Python
修复iPhone的safari浏览器上submit按钮圆角bug
2012/12/24 HTML / CSS
Nebula美国官网:便携式投影仪
2019/03/15 全球购物
Carmen Sol官网:购买果冻鞋、手袋和配件
2021/01/01 全球购物
24岁生日感言
2014/01/13 职场文书
结对共建工作方案
2014/06/02 职场文书
个人自荐书怎么写
2015/03/26 职场文书
公司前台接待岗位职责
2015/04/03 职场文书
2015年中学总务处工作总结
2015/07/22 职场文书
和领导吃饭祝酒词
2015/08/11 职场文书
使用GO语言实现Mysql数据库CURD的简单示例
2021/08/07 Golang
GoFrame基于性能测试得知grpool使用场景
2022/06/21 Golang