欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

thinkphp ftp上传文件问题

程序员文章站 2023-12-27 12:11:21
...
thinkphp自带的ftp上传该怎么使用,我想上传视频和图片,但是还是不行, 我看了手册, 但不是很明白, 如果能有实例最好,谢谢了,


回复讨论(解决方案)

可以贴出你不明白的地方,thinkphp官网有上传文件使用示例。

控制器中处理新增相册模块function album_add() {        if (!session('?user')) {            $this->error('无权限操作!', "", 3);        }        if (IS_POST) {            $upload = new \Think\Upload();// 实例化上传类            $upload->maxSize   =     3145728 ;// 设置附件上传大小            $upload->exts      =     array('jpg', 'gif', 'png', 'jpeg');// 设置附件上传类型            $d_root = $_SERVER['DOCUMENT_ROOT'];            $upload->rootPath  =     $d_root . '/upload/album/'; // 设置附件上传根目录            $upload->savePath  =     ''; // 设置附件上传(子)目录            // 上传文件            $info   =   $upload->upload();            $images = "";            $cover_image = "";            $index_cover = "";            if(!$info) {// 上传错误提示错误信息                $this->error($upload->getError());            } else {                if (is_array($info)) {                    foreach($info as $key=>$value) {                        if (strpos($key,"album_cover_add") !== FALSE) {                            $cover_image = '/upload/album/' . $value['savepath'] . $value['savename'];                            $thumb_image_path = '/upload/album/' . $value['savepath'] .'admin_cover/';                            $image_name = $value['savename'];                            create_dir("$d_root.$thumb_image_path");                            $image = new \Think\Image();                            $image->open("$d_root$cover_image");                            // 生成一个居中裁剪为150*150的缩略图并保存为thumb.jpg                            $image->thumb(150, 150,\Think\Image::IMAGE_THUMB_CENTER)->save("$d_root$thumb_image_path$image_name");                            $admin_cover_path = $thumb_image_path . $image_name;                        } else {                            $images .= '/upload/album/' . $value['savepath'] . $value['savename'] . "|";                            $images_path = '/upload/album/' . $value['savepath'] . $value['savename'];                            $index_cover_path = '/upload/album/' . $value['savepath'] . 'index_cover/';                            $image_name = $value['savename'];                            create_dir("$d_root.$index_cover_path");                            $image = new \Think\Image();                            $image->open("$d_root$images_path");                            // 生成一个居中裁剪为150*150的缩略图并保存为thumb.jpg                            $image->thumb(150, 150,\Think\Image::IMAGE_THUMB_CENTER)->save("$d_root$index_cover_path$image_name");                            $index_cover .= $index_cover_path . $image_name . "|";                        }                    }                }            }            $nowTime = date('y-m-d h:i:s',time());            $a['title'] = I('post.album_title_add');            $a['cover_image'] = $admin_cover_path;            $a['index_cover_image'] = $index_cover;            $a['images'] = $images;            $a['add_time'] = $nowTime;            $a['last_update_time'] = $nowTime;            $album = M("album");            $album->create($a);            $result = $album->add();            if($result){                //设置成功后跳转页面的地址,默认的返回页面是$_SERVER['HTTP_REFERER']                $this->success('相册发布成功!', "album_list", 3);            } else {                //错误页面的默认跳转页面是返回前一页,通常不需要设置                $this->error('相册发布失败!', "", 5);            }        } else {            $this->display("album_add");        }    }页面模板:
相册标题:
相册封面:
上传图片:
后台管理封面尺寸: 宽: 高:
前台首页封面尺寸: 宽: 高:
前台列表尺寸: 宽: 高:
前台详细页尺寸: 宽: 高:

谢谢大家, 已经解决~~

上一篇:

下一篇: