找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1574|回复: 0
打印 上一主题 下一主题

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

[复制链接]

2500

主题

2513

帖子

7520

积分

论坛元老

Rank: 8Rank: 8

积分
7520
跳转到指定楼层
楼主
发表于 2018-2-14 05:33:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

创建数据库upload_img,用于保存上传路径
CREATE TABLE `seminar_upload_img` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`` varchar(255) DEFAULT NULL COMMENT '图片名称',
`` 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中
#img{height:22px; border:#000 2px solid}
#button{height:30px; width:100px;}

[img]__UPLOAD__/{$data['']}[/img]
上传允许文件类型:'jpg', 'gif', 'png', 'jpeg'图像文件后



控制器UploadController.class.php中实现上传文件
namespace Home\Controller;
use Think\Controller;
class UploadController extends Controller {
public function index() {
$('upload_img');
$sel=$img->order('create_time desc')->find();
$this->assign('data', $sel);
$this->display();
}
public function upload(){
$upload_('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{// 上传成功 获取上传文件信息
$$info['savepath'].$info['savename'];
$data['']=$;
$data['']=$info['savename'];
$data['create_time']=NOW_TIME;
$upload_img->create($data);
$result=$upload_img->add();
if(!$result){
$this->error('上传失败!');
}else{
$this->success('上传成功');
}
}
}
}
}
以上所述是小编给大家介绍的thinkphp表单上传文件并将文件路径保存到数据库中,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
            
            
您可能感兴趣的文章:
  • thinkphp中常用的系统常量和系统变量
  • ThinkPHP中的系统常量和预定义常量集合
  • ThinkPHP模板替换与系统常量及应用实例教程
  • ThinkPHP中pathinfo的访问模式、路径访问模式及URL重写总结
  • ThinkPHP中URL路径访问与模块控制器之间的关系
  • ThinkPHP中公共函数路径和配置项路径的映射分析
  • thinkphp常见路径用法分析
  • ThinkPHP+jquery实现“加载更多”功能代码
  • thinkPHP5.0框架配置格式、加载解析与读取方法
  • thinkPHP5.0框架自动加载机制分析
  • thinkphp5 加载静态资源路径与常量的方法
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端