abstrak:控制器代碼:<?php namespace app\admin\controller; use app\admin\controller\Common; use think\facade\Session; use think\facade\Request; use app\admin\model\SlideModel; class&nbs
控制器代碼:
<?php namespace app\admin\controller; use app\admin\controller\Common; use think\facade\Session; use think\facade\Request; use app\admin\model\SlideModel; class Slide extends Common { public function index() { $num = SlideModel::count(); $sildes = SlideModel::order('id','desc')->paginate(1); $this->view->num = $num; $this->view->sildes = $sildes; return $this->fetch(); } public function add() { return $this->fetch(); } public function upload() { $file = Request::file('file'); $info = $file->validate(['ext'=>'jpg,jpeg,png,gif'])->move('upload'); if($info){ $fileName = '/upload/'.$info->getSaveName(); return ['res'=>1,'msg'=>'上傳成功','data'=>$fileName]; }else{ return $file->getError(); } } public function DoAdd() { $data = Request::param(); $data['username'] = Session::get('username'); $data['time'] = time(); if(SlideModel::create($data)){ return ['res'=>1,'msg'=>'添加成功']; }else{ return ['res'=>o,'msg'=>'添加失敗']; } } public function del() { $id = Request::param('id'); if(SlideModel::destroy($id)){ return ['res'=>1,'msg'=>'刪除成功']; } } }
模型代碼:
<?php namespace app\admin\model; use think\Model; class SlideModel extends Model { protected $table = 'slide'; protected $pk = 'id'; }
輪播圖列表模板代碼:
{include file="public/head"} <body> <div class="x-nav"> <a class="layui-btn layui-btn-small" style="line-height:1.6em;margin-top:3px;float:right" href="javascript:location.replace(location.href);" title="刷新"> <i class="layui-icon" style="line-height:30px">?</i></a> </div> <div class="x-body"> <xblock> <button class="layui-btn" onclick="x_admin_show('添加用戶','{:url(\'Slide/add\')}')"><i class="layui-icon"></i>添加</button> <span class="x-right" style="line-height:40px">共有數(shù)據(jù):{$num} 條</span> </xblock> <table class="layui-table"> <thead> <tr> <th>ID</th> <th>輪播圖</th> <th>輪播圖說明</th> <th>發(fā)布管理員</th> <th>發(fā)布日期</th> <th >操作</th> </tr> </thead> <tbody> {volist name="sildes" id="slide"} <tr> <td>{$slide.id}</td> <td><img src="{$slide.pic}"></td> <td>{$slide.desc}</td> <td>{$slide.username}</td> <td>{$slide.time|date="Y-m-d"}</td> <td class="td-manage"> <a title="刪除" onclick="member_del(this,'{$slide.id}')" href="javascript:;"> <i class="layui-icon"></i> </a> </td> </tr> {/volist} </tbody> </table> <div class="page"> <div> </div> </div> </div> <script> layui.use('laydate', function(){ var laydate = layui.laydate; //執(zhí)行一個laydate實(shí)例 laydate.render({ elem: '#start' //指定元素 }); //執(zhí)行一個laydate實(shí)例 laydate.render({ elem: '#end' //指定元素 }); }); /*用戶-刪除*/ function member_del(obj,id){ layer.confirm('確認(rèn)要刪除嗎?',function(index){ //發(fā)異步刪除數(shù)據(jù) $.get('{:url("del")}','id='+id,function(data){ if(data.res == 1){ $(obj).parents("tr").remove(); layer.msg(data.msg,{icon:1,time:1000}); } }); }); } </script> </body> </html>
輪播圖添加模板代碼
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> X-admin v1.0 </title> <meta name="renderer" content="webkit"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="format-detection" content="telephone=no"> <link rel="stylesheet" href="__ADMIN__/css/x-admin.css" media="all"> </head> <body> <div class="x-body"> <form class="layui-form"> <div class="layui-form-item"> <label for="link" class="layui-form-label"> <span class="x-red">*</span>輪播圖 </label> <button type="button" class="layui-btn" id="slide"> <i class="layui-icon"></i>上傳圖片 </button> </div> <div class="layui-form-item"> <label class="layui-form-label">縮略圖 </label> <img id="LAY_demo_upload" width="400" src=""> </div> <div class="layui-form-item layui-form-text"> <label for="desc" class="layui-form-label"> 輪播圖說明 </label> <div class="layui-input-inline"> <textarea placeholder="" id="desc" name="desc" class="layui-textarea"></textarea> </div> </div> <div class="layui-form-item"> <label for="L_repass" class="layui-form-label"> </label> <button class="layui-btn" lay-filter="add" lay-submit=""> 增加 </button> </div> </form> </div> <script src="__ADMIN__/js/layui.js" charset="utf-8"> </script> <script src="__ADMIN__/js/x-layui.js" charset="utf-8"> </script> <script src="__ADMIN__/plugins/layui/layui.js" charset="utf-8"> </script> <!-- <script> layui.use('upload', function(){ var upload = layui.upload; //執(zhí)行實(shí)例 var uploadInst = upload.render({ elem: '#test1' //綁定元素 ,url: '{:url("upload")}' //上傳接口 ,done: function(res){ //上傳完畢回調(diào) } ,error: function(){ //請求異?;卣{(diào) } }); }); </script> --> <script> layui.use(['form','layer','upload'], function(){ $ = layui.jquery; var form = layui.form ,layer = layui.layer; var upload = layui.upload; //執(zhí)行實(shí)例 var uploadInst = upload.render({ elem: '#slide' //綁定元素 ,url: '{:url("Slide/upload")}' //上傳接口 ,done: function(res){ //上傳完畢回調(diào) // console.log(res); $('#LAY_demo_upload').attr('src',res.data); } ,error: function(){ //請求異常回調(diào) } }); // //圖片上傳接口 // layui.upload({ // url: '' //上傳接口 // ,success: function(res){ //上傳成功后的回調(diào) // console.log(res); // $('#LAY_demo_upload').attr('src',res.url); // } // }); //監(jiān)聽提交 form.on('submit(add)', function(data){ // console.log(data); //發(fā)異步,把數(shù)據(jù)提交給php $.post('{:url("DoAdd")}',{ 'pic':$('#LAY_demo_upload').attr('src'), 'desc':$('#desc').val() },function(data){ if(data.res == 1){ layer.alert(data.msg, {icon: 6},function () { // 獲得frame索引 var index = parent.layer.getFrameIndex(window.name); //關(guān)閉當(dāng)前frame parent.layer.close(index); }); }else{ layer.alert(data.msg, {icon: 6},function () { // 獲得frame索引 var index = parent.layer.getFrameIndex(window.name); //關(guān)閉當(dāng)前frame parent.layer.close(index); }); } }); return false; }); }); </script> </body> </html>
Guru membetulkan:西門大官人Masa pembetulan:2019-03-03 10:33:51
Rumusan guru:這里主要是通過model來實(shí)現(xiàn)數(shù)據(jù)的查詢上插入操作。注意一下:通過文件的擴(kuò)展名來識別上傳的文件類型是不準(zhǔn)確的,如:可以把php程序的擴(kuò)展名改為.jpg上傳。詳情可以看一下我的php案全課程,里面有詳細(xì)的講解