您的位置:首页 > 编程语言 > PHP开发

微信实验十三、ThinkPHP5.0用户查询、分类查询及源码下载

2017-04-27 15:35 441 查看
(>>>>在公众号中输入文章最后彩蛋即可获取源代码)
开源项目:https://github.com/chenxhjeo,个人博客:http://blog.csdn.net/u013487761
技术QQ群名称:豆豆咨询,群号:625686304
微信公众号名称:豆豆咨询,微信公众号:douAsk
初建日期:2017.04.27

一、实验目的 

1、掌握ThinkPHP5.0用户查询与分类查询功能。

二、实验内容

1、掌握ThinkPHP5.0用户查询功能。

2、掌握ThinkPHP5.0用户分类查询功能。

三、实验步骤及过程 

实验十二实现了单页浏览、删除、增加和修改用户功能,但复杂的查询功能并没有实现,以下我们将介绍如何实现这些功能。

1、查询与分类查询功能界面

用户登录后,进入http://127.0.0.1/noneCms/public/index.php/weixin/index/index.html主界面,单击公众号用户,则进入了微信用户信息管理界面,包括用户信息浏览、删除、增加、修改、查询与分类查询几个功能,如图所示。



2、关键代码解析

我们将详细解析查询与分类查询功能实现的关键步骤,包括查询功能与后台之间的交互;分类查询与后台的交互。

1)查询功能与后台的交互

用户单击查询按钮,通过以下代码调用users控制器的index方法,以get方法向后台传递数据,前台通过input的id得到用户输入,代码如下。

  $(".enq").click(function(){

       var name=$("#name").val();

       var url ="{:url('users/index')}" + "?name=" + name;

      window.location.href = url;

    });

2)分类查询功能与后台的交互

用户单击分类查询按钮,通过以下代码调用users控制器的index方法,同样以get方法向后台传递数据,前台通过input的id得到用户输入,包括查询类别和输入内容,代码如下。

//分类查询

   $(".enqc").click(function(){

         var enqcategory=$("#enqCategory").val();

        varenqCategory= $("#inpCon").val();

        var url= "{:url('users/index')}" + "?enqName=" + enqcategory +"&enqCategory=" + enqCategory;

       window.location.href = url;

     })

另外,当用户单击分类查询之后,需要保留用户的分类类别,我们采用$("#enqCategory").val('{$name}');代码得到用户的查询分类信息,设置id为enqCategory的select控件内容,$name从后台传递过来的变量。

3)Users.php文件查询与分类查询功能

Users.php是users控制器文件,其中index()方法显示用户管理页面,查询包括单条件查询和多条件查询,代码如下:

public function index()

       {

               $id = input('param.id',0);

               $userName = input('param.name','');

               $enqName= input('param.enqName','');

               $enqCategory= input('param.enqCategory','');

               

               $this->assign('name', 'name');

               //exit(json_encode(['status' => 0, 'msg' => 'id:'.$id.' name:'.$userName.' enqName:'.$enqName.'  enqCategory:'.$enqCategory, 'url' => '']));

               if($id > 0){

                        $list = Db::name('user')->field('username,logintime,id,loginip,email,islock,phone')->where('id','eq',$id)->where('islock','neq',3)->select();

                        $this->assign('list', $list);

                        return $this->fetch();

               } else if($userName != '') {

                        $list = Db::name('user')->field('username,logintime,id,loginip,email,islock,phone')->where('username','like','%'.$userName.'%')->where('islock','neq',3)->select();

                        $this->assign('list', $list);

                        return $this->fetch();

               } else if($enqCategory != '') {

                        $this->assign('name', $enqName);

                        if($enqName == 'name'){

                                $list = Db::name('user')->field('username,logintime,id,loginip,email,islock,phone')->where('username','like','%'.$enqCategory.'%')->where('islock','neq',3)->select();

                                $this->assign('list', $list);

                                return $this->fetch();

                        } else if($enqName == 'phone'){

                                $list = Db::name('user')->field('username,logintime,id,loginip,email,islock,phone')->where('phone','like','%'.$enqCategory.'%')->where('islock','neq',3)->select();

                                $this->assign('list', $list);

                                return $this->fetch();

                        } 

               } else {

                        $list = Db::name('user')->field('username,logintime,id,loginip,email,islock,phone')->where('islock','neq',3)->select();

                        $this->assign('list', $list);

                        

                        return $this->fetch();

               }

       }


四、技术服务

    1、如果有疑问或者需要帮助,请加入QQ群(群名称:豆豆咨询,群号:625686304);或者公众号douAsk,公众号名称为“豆豆咨询”。扫描以下二维码,关注“豆豆咨询”



技术QQ群名称:豆豆咨询,群号:625686304

微信公众号名称:豆豆咨询,微信公众号:douAsk

彩蛋号:1210。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息