• corethink功能模块探索开发(十六)后台搜索功能


    效果图:

    代码很简单,就是添加搜索框,搜索字段,在初始化页面查询的时候添加查询条件。

    1.添加搜索框

    添加到删除按钮后边.

        ->setSearch('请输入设备名称/MAC/宿舍号', U('index'))  
    

    2.添加搜索字段

        // 搜索  
                $keyword = I('keyword', '', 'string');  
                $condition = array('like','%'.$keyword.'%');  
                $map['ap_name|ap_mac|dormitory_num'] = array($condition, $condition, $condition,'_multi'=>true);  
    

    添加在index方法开头,map的索引是可供搜索的字段,对应condition

    3.添加查询条件

        ->where($map)  
    

      

    OK.PS:搜索的时候不能用回车键,使用按钮吧。

    Application/Equip/Admin/ApAdmin.class.php

        <?php  
        /** 
         * Created by PhpStorm. 
         * User: pangPython 
         * Date: 16-3-30 
         * Time: 下午10:22 
         */  
          
        namespace EquipAdmin;  
          
          
        use AdminControllerAdminController;  
        use CommonUtilThinkPage;  
        class ApAdmin extends AdminController{  
            public function index(){  
                // 搜索  
                $keyword = I('keyword', '', 'string');  
                $condition = array('like','%'.$keyword.'%');  
                $map['ap_name|ap_mac|dormitory_num'] = array($condition, $condition, $condition,'_multi'=>true);  
          
          
          
          
                // 获取所有链接  
                $p = !empty($_GET["p"]) ? $_GET["p"] : 1;  
                $device_repire_object = D('equip_ap');//实例化数据对象  
                $data_list = $device_repire_object  
                    ->page($p, C('ADMIN_PAGE_ROWS'))  
                    ->where($map)  
                    ->select();//分页查询数据列表  
                $page = new Page(  
                    $device_repire_object->count(),  
                    C('ADMIN_PAGE_ROWS')  
                );  
          
                // 转换成树状列表  
                $tree = new CommonUtilTree();  
                $data_list = $tree->toFormatTree($data_list);  
                //使用Builder快速建立列表页面  
                $builder = new CommonBuilderListBuilder();  
                $builder->setMetaTitle('无线AP') //设置页面标题  
                        ->addTopButton('addnew')  
                        ->addTopButton('delete',array('model'=>'equip_ap'))  // 添加删除按钮  
                        ->setSearch('请输入设备名称/MAC/宿舍号', U('index'))  
                        ->addTableColumn('id', 'ID')  
                        ->addTableColumn('ap_name', '设备名称')  
                        ->addTableColumn('ap_mac', 'MAC')  
                        ->addTableColumn('dormitory_num','宿舍号')  
                        ->addTableColumn('ap_status', '状态', 'status')  
                        ->addTableColumn('right_button', '操作', 'btn')  
                        ->setTableDataList($data_list)  // 数据列表  
                        ->setTableDataPage($page->show())  // 数据列表分页  
                        ->addRightButton('edit')           // 添加编辑按钮  
                        ->display();  
          
            }  
          
            public function add(){  
                if(IS_POST){  
                    $ap_object = D('equip_ap');  
                    $data = $ap_object->create();  
          
                    if($data){  
                        $id = $ap_object->add($data);  
                        if ($id) {  
                            $this->success('新增成功', U('index'));  
                        } else {  
                            $this->error('新增失败');  
                        }  
                    }else{  
                            $this->error($ap_object->getError());  
                    }  
          
                }else{  
                    // 使用FormBuilder快速建立表单页面。  
                    $builder = new CommonBuilderFormBuilder();  
                    $builder->setMetaTitle('新增AP')  // 设置页面标题  
                            ->setPostUrl(U('add'))     // 设置表单提交地址  
                            ->addFormItem('ap_name', 'text', 'AP名称')  
                            ->addFormItem('ap_mac', 'text', 'mac', 'AP mac地址')  
                            ->addFormItem('dormitory_num', 'text', '宿舍号', 'AP对应的宿舍号')  
                            ->addFormItem('status', 'radio', '状态', 'AP状态',array('0'=>'在线','1'=>'离线'))  
                            ->display();  
                }  
            }  
          
            public function edit($id){  
          
                if(IS_POST){  
                    //用于保存编辑后的数据  
                    $Equip_Repaire_object = D('equip_ap');  
                    $data = $Equip_Repaire_object->create();  
                    if ($data) {  
                        if ($Equip_Repaire_object->save($data)) {  
                            $this->success('更新成功', U('index'));  
                        } else {  
                            $this->error('更新失败');  
                        }  
                    } else {  
                        $this->error($Equip_Repaire_object->getError());  
                    }  
                }else{  
          
                    //用于填充并显示点击编辑按钮后生成的列表  
          
                    $info = D('equip_ap')->find($id);  
                    // 使用FormBuilder快速建立表单页面。  
                    $builder = new CommonBuilderFormBuilder();  
                    $builder->setMetaTitle('更改AP信息')  // 设置页面标题  
                    ->setPostUrl(U('edit'))    // 设置表单提交地址  
                    ->addFormItem('id', 'hidden', 'ID', 'ID')  
                        //设置文本类型的表单项目并用对应的数据库字段填充  
                        ->addFormItem('ap_name', 'text', 'AP', 'AP 名称')  
                        ->addFormItem('ap_mac', 'text', 'MAC', 'AP MAC 地址')  
                        ->addFormItem('ap_status', 'radio', '状态', 'AP状态',array('0'=>'离线','1'=>'在线'))  
                        ->addFormItem('dormitory_num', 'text', '宿舍号', 'AP对应的宿舍号')  
          
                        //设置数据关联  
                        ->setFormData($info)  
                        ->display();  
                }  
            }  
        }  
    

      

  • 相关阅读:
    从索罗斯的“暴涨-暴跌”模型,看“房地产泡沫”
    在深圳有娃的家长必须要懂的社保少儿医保,不然亏大了!(收藏)
    深圳楼市2007vs2016
    细论庚金
    Win10无法安装提示磁盘布局不受UEFI固件支持怎样解决
    八字庚金特性
    广东省限价房转让需补70%的溢价
    DBUTIL 调用存储过程例子
    第二届八一杯网络大学生数学竞赛试题
    八一的专属上网导航服务
  • 原文地址:https://www.cnblogs.com/mracale/p/8086192.html
Copyright © 2020-2023  润新知