layui中的视频上传(PHP )

22 篇文章 1 订阅

1.html中:

<div class="layui-form-item">
    <label class="layui-form-label">视频:</label>
    <div class="layui-input-inline">
     <!--存放上传后视频路径-->
        <input type="text" name="video"  id="inputvideourl" placeholder="视频地址" value="" class="layui-input"> 
    </div>
  <!--视频显示代码-->
    <video width="320" height="240" controls="controls" autoplay="autoplay">
        <source id="show_video" src="{:isset($list.video)?$list.video:''}" type="video/mp4" />       
    </video>
    <button type="button" class="layui-btn" id="upload_video"><i class="layui-icon"></i>上传视频</button>
</div>

2.js中:

//上传视频
upload.render({
    elem: '#upload_video'
    ,url: "上传接口"
    ,accept: 'video' //视频
    ,done: function(res){
        $("#inputvideourl").val(res.data.src);
        layer.msg('上传成功');
    }
});

3.上传接口:

public function upload()
{
    $file = request()->file('file');
    $info = $file->validate(['size'=>3145728])->move( '../public/uploads');
    if($info){
        $msg=['code'=>0,'msg'=>'上传成功','data'=>['src'=>'/uploads/'.str_replace('\\', '/', $info->getSaveName())]];
    }else{
        $msg=['code'=>1,'msg'=>$file->getError()];
    }
    return $msg;
}

样例截图:

 

在ThinkPHP5 (TP5) 框架结合Layui库进行文件上传时,处理视频文件通常会稍微复杂一些,因为视频文件通常比图片大得多。以下是使用TP5和Layui进行视频上传的基本步骤: 1. 引入依赖:首先,在项目引入layui的表单组件和文件上传插件`layui.upload`。 ```html <script src="__STATIC__/layui/layui.js"></script> ``` 2. 配置上传规则:在前端HTML设置一个表单,配置`layui.upload`的属性,例如设置允许上传的文件类型和最大大小。 ```html <form id="videoForm" lay-filter="uploadVideo"> <input type="hidden" name="token" value="<your-token>"> <input type="file" name="videoFile" lay-choose="layfiles" accept="video/*"> <button type="submit">上传</button> </form> <script> layui.use(['form', 'layer', 'upload'], function () { var form = layui.form(); }); </script> ``` 3. JavaScript处理:在layui.js文件加载完成后,初始化上传函数并监听表单提交事件。 ```javascript layui.upload({ url: '<your-api-url>', // 后端接收视频的URL field: 'videoFile', // 表单字段名 before: async function (obj, file) { /* 在这里添加文件验证和限制 */ if (!file.type.match('video/*')) { layer.msg('只支持上传视频文件'); return false; } // 检查文件大小 if (file.size > 10 * 1024 * 1024) { layer.msg('视频文件过大,请小于10MB'); return false; } }, done: function (res, file) { console.log(res); // 成功回调 // 这里可以将上传结果返回给服务器或显示给用户 } }, '#videoForm') ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值