ppypp伦理天堂,91手机在线视频,免费在线观看黄色毛片,夜夜穞天天穞狠狠穞AV美女按摩

聯系官方銷售客服

1835022288

028-61286886

投訴 分享 配合的組件去做會員預約功能可以彈窗信息提交修改信息可以小化彈 8 0
迅睿CMS版本:4.3.5

配合layui的layer組件去做會員預約功能,可以彈窗信息提交修改信息。可以小化彈窗


image


image


image


image

html部分代碼

<div class="portlet-body">
        <table class="layui-hide" id="test" lay-filter="demo"></table>這段話的意思是把數據填入表格具體看layui手冊
    </div>

js部分

//這段js是用來顯示表格中的按鈕,也可以自己定義,我這里是用的layui組件
<script type="text/html" id="barDemo">
    {{#  if(d.reserve == '{$member.name}'){ }}
    <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail">回復</a>
    {{#  } }}
    {{#  if(d.reservepeo == '{$member.name}'){ }}
    <a class="layui-btn layui-btn-normal layui-btn-xs" lay-event="quxiao">取消</a>
    {{#  } }}
</script>

<script>
    layui.use(['table','layer','form','laydate'], function(){
        var table = layui.table,
            $ = layui.jquery,
            layer = layui.layer,
            form = layui.form,
            laydate = layui.laydate;

        table.render({
            elem: '#test'
            ,url:'/index.php?s=member&app=reserve&c=home&m=content&id={if $member}{$member.id}{/if}'
            ,page: true
            ,cols: [[
                {field:'id', align: 'center', width: 100, title: 'ID', sort: true}
                ,{field:'day', align: 'center', title: '時間'}
                ,{field:'time', align: 'center', title: '具體時間'}
                ,{field:'remark', align: 'center', title: '預約內容'}
                ,{field:'reserve', align: 'center', title: '被預約人'}
                ,{field:'reservepeo', align: 'center', title: '預約人'}
                ,{field:'remark1', align: 'center', title: '預約回復'}
                ,{field:'state', align: 'center', title: '狀態'}
                ,{fixed: 'right', align: 'center', width: 150, title:'操作', toolbar: '#barDemo'}
            ]]

        });

        table.on('tool(demo)', function(obj){

            var data = obj.data;
            var id = data.id;
            if(obj.event === 'detail'){
                console.log(obj)
                layer.open({
                    type: 1,
                    title: '預約回復',
                    area: ['700px', '450px'],
                    fixed: true, //不固定
                    maxmin: true,
                    closeBtn: 1,
                    shadeClose: true,
                    content: '<form style="padding: 30px;" class="layui-form layui-form-pane" action="" id="fromSubmit">\n' +
                        '  <div class="layui-form-item">\n' +
                        '    <div class="layui-inline">\n' +
                        '    <label class="layui-form-label">狀態</label>\n' +
                        '    <div class="layui-input-block">\n' +
                        '      <select name="state">\n' +
                        '        <option value="">請選擇預約狀態</option>\n' +
                        '         {php $field = dr_field_options(15);}' +
                        '         {loop $field $value $name}' +
                        '         <option value="{$value}">{$name}</option>\n' +
                        '         {/loop}' +
                        '      </select>\n' +
                        '    </div>\n' +
                        '  </div>\n' +
                        '  </div>\n' +
                        '  \n' +
                        '  <div class="layui-form-item layui-form-text">\n' +
                        '    <label class="layui-form-label">回復內容</label>\n' +
                        '    <div class="layui-input-block">\n' +
                        '      <textarea name="remark1" placeholder="請輸入內容" class="layui-textarea"></textarea>\n' +
                        '    </div>\n' +
                        '  </div>\n' +
                        '  <div class="layui-form-item">\n' +
                        '    <button class="layui-btn" lay-submit="" lay-filter="submit">立即預約</button>\n' +
                        '  </div>\n' +
                        '</form>'
                });
                form.render();
                laydate.render({
                    elem: '#date',
                    type: 'datetime',
                    theme: 'grid'
                });
                form.on('submit(submit)', function(data){
                    var info = [];
                    $.ajax({
                        url: "/index.php?s=member&app=reserve&c=home&m=huifu",
                        type: "POST",
                        data: {
                            id: id,
                            sumbitInfo: $('#fromSubmit').serializeArray(),
                    {csrf_token()} : "{csrf_hash()}"
                },
                    success: function(data){
                        info = JSON.parse(data);
                        if (info.code == 1){
                            layer.msg('<span style="color: #fff">回復成功!</span>');
                            setTimeout(function(){
                                location.reload();
                            },3000);
                        }
                    },
                    error: function(data){
                        info = JSON.parse(data);
                        if (info.code == 0){
                            layer.msg('<span style="color: #fff">回復失敗!請重試!</span>');
                            setTimeout(function(){
                                location.reload();
                            },3000);
                        }
                    }
                });
                    return false;
                });
            }
            else if(obj.event === 'quxiao'){
                layer.open({
                    type: 1,
                    title: '{dr_lang("是否取消預約?")}',
                    shadeClose: true,
                    shade: 0,
                    btn: ['確定','否'],
                    btnAlign: 'c' ,//按鈕居中
                    yes: function(index, layero){
                        if (layero) {
                            $.ajax({
                                url: "/index.php?s=member&app=reserve&c=home&m=quxiao",
                                type: "POST",
                                dataType: "json",
                                data: {
                                    id: id,
                                    {csrf_token()} : "{csrf_hash()}"
                                },
                                success: function(data){
                                    if (data.code == 1){
                                        layer.msg('<span style="color: #fff">取消預約成功!</span>');
                                        setTimeout(function(){
                                            location.reload();
                                        },3000);
                                    }
                                },
                                error: function(data){
                                    if (data.code == 0){
                                        layer.msg('<span style="color: #fff">取消預約失敗!請重試!</span>');
                                    }
                                }
                        });
                            layer.close(index);
                        }else {
                            return false;
                        }
                    }
                });
            }
        });
    });
</script>

php部分,這部分代碼只是作為參考,具體方法,還是要看你應用場景去做,只能告訴你怎么去做,不要用代碼,自己寫接口跟方法去應用

public function memberlist() {
        \Phpcmf\Service::V()->display('module_member.html');
    }

    public function memberinfo () {
        $id = $this->request->getGet('id');
        $page = $this->request->getGet('page');
        $size = $this->request->getGet('limit');
        $up = ($page-1)*$size;
        if (!empty($id)) {
            $total = count(\Phpcmf\Service::M()->db->query('SELECT id,email,phone,"name" FROM dr_member WHERE id IN (SELECT DISTINCT uid FROM dr_admin_role_index WHERE roleid IN (SELECT roleid FROM dr_admin_role_index WHERE uid = '.$id.'))')->getResultArray());
            $info = \Phpcmf\Service::M()->db->query('SELECT id,email,phone,`name` FROM dr_member WHERE id IN (SELECT DISTINCT uid FROM dr_admin_role_index WHERE roleid IN (SELECT roleid FROM dr_admin_role_index WHERE uid = '.$id.')) LIMIT '.$up.','.$size.'')->getResultArray();

            return json_encode([
                'code' => 0,
                'msg' => '',
                'count' => $total,
                'data' => $info
            ]);
        }else{
            return json_encode([
                'code' => 0,
                'msg' => '',
                'count' => 0,
                'data' => ''
            ]);
        }
    }

    public function yuyue() {
        $uid = $this->request->getPost('uid');
        $id = $this->request->getPost('id');
        $author = $this->request->getPost('author');
        $sumbitInfo = $this->request->getPost('sumbitInfo');

        $info = \Phpcmf\Service::M()->db->query("SELECT AUTO_INCREMENT FROM INFORMATION_SCHEMA. TABLES WHERE TABLE_NAME = 'dr_".SITE_ID."_reserve'");
        foreach ($info->getResultArray() as $da){}
        $lastid = $da['AUTO_INCREMENT'];

        foreach ($sumbitInfo as $sumbit){
            if ($sumbit['name'] == 'time'){
                $data[$sumbit['name']] = strtotime($sumbit['value']);
            }else{
                $data[$sumbit['name']] = $sumbit['value'];
            }
        }
        $data['uid'] = $uid;
        $data['catid'] = 1;
        $data['status'] = 9;
        $data['author'] = $author;
        $data['url'] = '/index.php?c=show&id='.$lastid;
        $data['inputip'] = \Phpcmf\Service::L('input')->ip_address();
        $data['inputtime'] = SYS_TIME;
        $data['updatetime'] = SYS_TIME;
        $data['reserve'] = $id;
        $data['reservepeo'] = $uid;
        $data['state'] = 1;

        $fdata['uid'] = $uid;
        $fdata['catid'] = 1;
        $fdata['id'] = $lastid;
        $fdata['content'] = '';


        $add = \Phpcmf\Service::M()->db->table(SITE_ID.'_reserve')->insert($data);
        \Phpcmf\Service::M()->db->table(SITE_ID.'_reserve_data_0')->insert($fdata);
        if ($add){
            return json_encode(['code' => 1]);
        }else{
            return json_encode(['code' => 0]);
        }
    }

    public function content () {
        $id = $this->request->getGet('id');
        $page = $this->request->getGet('page');
        $size = $this->request->getGet('limit');
        $day = dr_field_options(9);
        $state = dr_field_options(15);
        $up = ($page-1)*$size;
        if (!empty($id)) {
            $total = count(\Phpcmf\Service::M()->db->query('SELECT id,url,`day`,time,remark,reserve,reservepeo,remark1,state FROM dr_1_reserve WHERE uid = '.$id.' OR reserve = '.$id.'')->getResultArray());
            $info = \Phpcmf\Service::M()->db->query('SELECT id,url,`day`,time,remark,reserve,reservepeo,remark1,state FROM dr_1_reserve WHERE uid = '.$id.' OR reserve = '.$id.'')->getResultArray();
            foreach ($info as $key=>$in) {
                $info[$key]['day'] = $day[$in['day']];
                $info[$key]['state'] = $state[$in['state']];
                $info[$key]['time'] = date('Y-m-d H:i:s',$in['time']);
                if (!empty($in['reserve'])){
                    $reserve = dr_member_info($in['reserve']);
                    $info[$key]['reserve'] = $reserve['name'];
                }
                if (!empty($in['reservepeo'])){
                    $reserve = dr_member_info($in['reservepeo']);
                    $info[$key]['reservepeo'] = $reserve['name'];
                }
            }
            return json_encode([
                'code' => 0,
                'msg' => '',
                'count' => $total,
                'data' => $info
            ]);
        }else{
            return json_encode([
                'code' => 0,
                'msg' => '',
                'count' => 0,
                'data' => ''
            ]);
        }
    }

    public function huifu() {
        $id = $this->request->getPost('id');
        $sumbitInfo = $this->request->getPost('sumbitInfo');

        foreach ($sumbitInfo as $sumbit){
            $data[$sumbit['name']] = $sumbit['value'];
        }

        $update = \Phpcmf\Service::M()->db->table(SITE_ID.'_reserve')->where('id',$id)->update($data);
        if ($update){
            return json_encode(['code' => 1]);
        }else{
            return json_encode(['code' => 0]);
        }
    }

    public function quxiao() {
        $id = $this->request->getPost('id');

        $update = \Phpcmf\Service::M()->db->table(SITE_ID.'_reserve')->where('id',$id)->update(['state'=> 3]);
        if ($update){
            return json_encode(['code' => 1]);
        }else{
            return json_encode(['code' => 0]);
        }
    }
解決方案