<?php echo $transition_page['control']; ?> <!-- API页面设置 --> <?php require_once(dirname(__DIR__).'/header.php'); ?> <?php include_once(dirname(__DIR__).'/left.php'); ?> <div class="layui-body"> <!-- 内容主体区域 --> <div class="layui-row content-body place-holder"> <!-- 说明提示框 --> <div class="layui-col-lg12"> <div class="page-msg"> <ol> <li>订阅用户可以对数据库进行本地备份和回滚</li> <li>备份数据库仅保存最近10份数据</li> <li>该功能仅辅助备份使用,无法确保100%数据安全,因此定期对整个站点打包备份仍然是必要的</li> </ol> </div> </div> <!-- 说明提示框END --> <div class="layui-col-lg12"> <!-- 数据表格 --> <table class="layui-hide" id="mytable" lay-filter="mytable"></table> <!-- 数据表格END --> <!-- 最右侧的操作选项 --> <script type="text/html" id="tooloption"> <a class="layui-btn layui-btn-xs" lay-event="restore">回滚</a> <a class="layui-btn layui-btn-xs" lay-event="download">下载</a> <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a> </script> <!-- 操作选项END --> <!-- 头部工具栏 --> <script type="text/html" id="toolbarheader"> <div class="layui-btn-container"> <button class="layui-btn layui-btn-sm" lay-event="backup">立即备份</button> </div> </script> <!-- 头部工具栏END --> </div> </div> </div> <?php include_once(dirname(__DIR__).'/footer.php'); ?> <script> layui.use(['table'],function(){ var table = layui.table; // 渲染表格 table.render({ elem: '#mytable' ,id: 'tableid' ,url:'/index.php?c=api&method=backup_db_list' // 此处为静态模拟数据,实际使用时需换成真实接口 ,toolbar: '#toolbarheader' ,totalRow: true // 开启合计行 ,cols: [[ {field:'id', width:80, title: '序号'} ,{field:'name', title:'数据库文件名',width:300} ,{field:'mtime', width:80, title: '备份时间', width:240} ,{field:'size', width:115, title: '数据库大小'} ,{fixed: 'right', title:'操作', toolbar: '#tooloption'} ]] }); // 渲染表格END // 表头工具栏 //触发事件 table.on('toolbar(mytable)', function(obj){ var checkStatus = table.checkStatus(obj.config.id); switch(obj.event){ case 'backup': $.get("/index.php?c=api&method=backup_db",function(data,status){ if( data.code == 200 ) { layer.msg('备份成功!',{icon:1}); //刷新表格 table.reload('tableid', { where: { //设定异步数据接口的额外参数,任意设 aaaaaa: 'xxx' } }); } else{ layer.msg(data.msg,{icon:5}); } }); break; }; }); // 表头工具栏END //单元格工具事件 table.on('tool(mytable)', function(obj){ // 注:test 是 table 原始标签的属性 lay-filter="对应的值" var data = obj.data; //获得当前行数据 var layEvent = obj.event; //获得 lay-event 对应的值(也可以是表头的 event 参数对应的值) var tr = obj.tr; //获得当前行 tr 的 DOM 对象(如果有的话) if(layEvent === 'restore'){ //回滚 layer.confirm('确定回滚吗?', {icon:3,title:'提示'},function(index){ $.get("/index.php?c=api&method=restore_db",{name:data.name},function(data,status){ if(data.code == 200) { layer.close(index); layer.msg('回滚成功!',{icon:1}) } else{ layer.close(index); layer.msg(data.msg,{icon:5}) } }); }); } else if( layEvent === 'download' ) { var data = obj.data; //获得当前行数据 window.location.href = "?c=api&method=down_db&name=" + data.name; } else if(layEvent === 'del'){ //删除 layer.confirm('确定删除吗?', {icon:3,title:'提示'},function(index){ $.get("/index.php?c=api&method=del_backup_db",{name:data.name},function(data,status){ if(data.code == 200) { obj.del(); // 删除对应行(tr)的 DOM 结构,并更新缓存 layer.close(index); } else{ layer.msg(data.msg,{icon:5}) layer.close(index); } }); }); } }); //单元格工具事件END }); </script>