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

来源:互联网 发布:数据库设计第三范式 编辑:程序博客网 时间:2024/05/17 18:02

效果图:

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

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 Equip\Admin;use Admin\Controller\AdminController;use Common\Util\Think\Page;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 \Common\Util\Tree();        $data_list = $tree->toFormatTree($data_list);        //使用Builder快速建立列表页面        $builder = new \Common\Builder\ListBuilder();        $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 \Common\Builder\FormBuilder();            $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 \Common\Builder\FormBuilder();            $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();        }    }}




0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 锅的把手松了怎么办 奶锅把手松了怎么办 锅的手柄烧坏了怎么办 鞋子上的铆钉生锈了怎么办 包包上的铆钉生锈了怎么办 凉鞋的铆钉生锈了怎么办 扇子的铆钉坏了怎么办 包包的铆钉坏了怎么办 汽车半轴螺丝母拧不动怎么办? 卫衣袖子短了怎么办 u型导轨蚊帐下垂怎么办 100的水管螺纹出漏水怎么办 吊顶螺丝没有防锈处理怎么办 膨胀螺丝洞松了怎么办 膨胀螺丝眼大了怎么办 墙上螺丝孔大了怎么办 膨胀螺丝孔深了怎么办 克霉膨胀栓的线怎么办 摩托车排气管螺丝断了怎么办 汽车轮胎螺丝卸不下来怎么办 内六角螺丝卸不下来怎么办 洗衣机六角螺丝卸不动怎么办 黄油嘴打不进去怎么办 螺杆冷水机氟系统有空气怎么办 脚踏式加油枪皮碗不下去怎么办? 自攻螺丝滑丝怎么办? 大工打小工老板不管怎么办 虾缸的过滤吸虾怎么办 加热棒坏了鱼怎么办 钢材软打孔断钻头怎么办 空调余额下水管检查口按不上怎么办 风机盘管噪音大怎么办 混凝土水泥放少了怎么办 门式钢梁端板连接下料短啦怎么办? 灌桩导管堵了怎么办 公路车尾钩歪了怎么办 铃木羚羊车大灯不亮怎么办 玻璃瓶打碎了里面食物怎么办 玻璃门上轴坏了怎么办 配筋面积小了怎么办 ps大文件存不了怎么办