我的编程空间,编程开发者的网络收藏夹
学习永远不晚

YYC优雅草松鼠聚合直播系统·前端视频模块显示空白-解决办法-视频上传处理方法

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

YYC优雅草松鼠聚合直播系统·前端视频模块显示空白-解决办法-视频上传处理方法

前端视频模块显示空白

起因


由于短视频上传后路劲不正确导致前台无法正常显示,地址拼接有错

解决方案

更新v3.0.2后 视频上传处理部分进行了调整,可直接覆盖songshu-jhlive-admin/application/admin/controller/Video.php 文件

具体代码参考如下

onlyAdmin();        $file = request()->file('file');        $oldfile = input("oldfile");        if($file){            //图片可以是20M以内            $info = $file->validate(['size'=>20480000,'ext'=>'jpg,png,gif,jpeg'])->move(ROOT_PATH . 'public/uploads');            if($info){                $exif = exif_read_data(ROOT_PATH . 'public/uploads/'.$info->getSaveName());                $image = Image::open(ROOT_PATH . 'public/uploads/'.$info->getSaveName());                if(!empty($exif['Orientation'])) {                    switch($exif['Orientation']) {                        case 8:$image = $image->rotate(-90);break;                        case 3:$image = $image->rotate(180);break;                        case 6:$image = $image->rotate(90);break;                    }                }                $width = $image->width();                $height = $image->height();                $_height = $width ? $height/$width * 400 : 0;                $filepath = $info->getSaveName();                $filepath = str_replace("\\","/",$filepath);                $image->thumb(400, $_height)->save(ROOT_PATH . 'public/uploads/'.$filepath);                if(strlen($oldfile) && strpos($oldfile,"uploads/") === 0){                    @unlink(ROOT_PATH . 'public/'.$oldfile);//删除旧图片                }                $this->success(['filepath'=>config('storage_url').'uploads/'.$filepath]);            }else{                // 上传失败获取错误信息                $this->error($file->getError());            }        }        $this->error("未上传图片");    }    public function upload_video(){        $this->onlyAdmin();        $file = request()->file('file');        $oldfile = input("oldfile");        if($file){            //视频可以是200M以内            $info = $file->validate(['size'=>204800000,'ext'=>'avi,mpg,mpeg,mpe,m1v,m2v,mpv2,mp2v,dat,ts,tp,tpr,pva,pss,mp4,m4v,m4p,m4b,3gp,3gpp,3g2,3gp2,ogg,mov,qt,amr,rm,ram,rmvb,rpm'])->move(ROOT_PATH . 'public/uploads');            if($info){                $filepath = $info->getSaveName();                $filepath = str_replace("\\","/",$filepath);                if(strlen($oldfile) && strpos($oldfile,"uploads/") === 0){                    @unlink(ROOT_PATH . 'public/'.$oldfile);//删除旧视频                }                $this->success(['filepath'=>config('storage_url').'uploads/'.$filepath]);            }else{                // 上传失败获取错误信息                $this->error($file->getError());            }        }        $this->error("未上传图片");    }    public function save_video()    {        $this->onlyAdmin();        if (!request()->isPost()) $this->error('请求类型有误');        $id = input("id");        $video = Db::name("videos")->where("id", $id)->find();        $title = input('title');        $img = input('imageurl');        $address = input('videourl');        if (strlen($title) == 0) $this->error("请填写一个标题");        if (strlen($img) == 0) $this->error("请填上传一张封面照片");        if (strlen($address) == 0) $this->error("视频地址不能为空");        if ($video) {            $data = array();            $data['title'] = $title;            $data['img'] = $img;            $data['address'] = $address;            $data['update_time'] = time();            if (Db::name("videos")->where("id",$video['id'])->update($data)) {                $this->success(NULL, "视频更新成功");            } else {                $this->error("视频更新未成功");            }        } else {            $data = array();            $data['title'] = $title;            $data['img'] = $img;            $data['address'] = $address;            $data['create_time'] = time();            if (Db::name("videos")->insert($data)) {                $this->success(NULL, "视频发布成功");            } else {                $this->error("视频发布未成功");            }        }    }    public function getlist(){        $this->onlyAdmin();        $db = Db::name("videos")->field('id,title,img,create_time,update_time,collect_times');        $keyword = input("keyword");        if(strlen($keyword)){            $db = $db->where("title","like","%".addslashes($keyword)."%");        }        $db = $db->order("id","desc");        $list = $db->paginate(10);        $list->each(function ($item,$key){            $item['create_time'] = date('Y-m-d H:i:s',$item['create_time']);            $item['update_time'] = $item['update_time'] ? date('Y-m-d H:i:s',$item['update_time']) : '从未更新';            return $item;        });        $this->success($list);    }    public function get_video(){        $this->onlyAdmin();        $video = Db::name("videos")->where("id",intval(input("id")))->find();        if(!$video) $this->error("未找到相关视频");        $this->success($video);    }    public function delete(){        $this->onlyAdmin();        $video = Db::name("videos")->where("id",intval(input("id")))->find();        if(!$video) $this->error("未找到相关视频");        if(Db::name("videos")->where("id",$video['id'])->delete()){            $img = $video['img'];            $address = $video['address'];            if(strpos($img,"uploads/") === 0) @unlink($img);            if(strpos($address,"uploads/") === 0) @unlink($address);            $this->success(NULL,"删除成功");        }else{            $this->error("删除失败");        }    }}

更新后

songshu-jhlive-admin/application/config.php 多了一行

  'storage_url'=>'https://jh.youyacao.com/',    // 应用调试模式    'app_debug'              => true,    // 应用Trace    'app_trace'              => false,    // 应用模式状态    'app_status'             => '',    // 是否支持多模块    'app_multi_module'       => true,    // 入口自动绑定模块    'auto_bind_module'       => false,    // 注册的根命名空间    'root_namespace'         => [],    // 扩展函数文件    'extra_file_list'        => [THINK_PATH . 'helper' . EXT],    // 默认输出类型    'default_return_type'    => 'json',    // 默认AJAX 数据返回格式,可选json xml ...    'default_ajax_return'    => 'json',    // 默认JSONP格式返回的处理方法

storage_url 对应填写自己的域名即可。

松鼠聚合直播系统下载地址:

https://download.csdn.net/download/dujiangdu123/86839877

来源地址:https://blog.csdn.net/dujiangdu123/article/details/127576592

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

YYC优雅草松鼠聚合直播系统·前端视频模块显示空白-解决办法-视频上传处理方法

下载Word文档到电脑,方便收藏和打印~

下载Word文档

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录