时间:2021-07-01 10:21:17 帮助过:11人阅读
可以贴出你不明白的地方,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"); } }页面模板:
谢谢大家, 已经解决~~