thinkphp的控制器传参

若一个function里面的内容大都一样,只是表不一样,可以使用传参方法写一个方法就行,模糊查询

publicfunction zaixiao_basic($n) {

        $tab = M($n);

        $name = I('Name');

        $idcard=I('IDcard');

        $coachname = I('Coachname');

        $page = isset($_POST['page']) ?intval($_POST['page']) : 1;

        $rows = isset($_POST['rows']) ?intval($_POST['rows']) : 10;

        $offset = ($page - 1) * $rows;

        $sql = " Name like '$name%' andIDcard like '$idcard%' and  Lixiao like '否'and Schoolname like'$_SESSION[schoolname]'";

        $rs=$tab->where($sql)->limit($offset, $rows)->select();

        $this->ajaxReturn($rs); 

     }

如果有个表的条件不一样如(表examinfo),可以这样写(组合查询)

public function zaixiao($n){
         $tab = M($n);
        $idcard = I('IDcard');
        $name = I('Name');
        if ($n == 'examinfo') {
            $coachname = I('Coachname');
        }
        $page = isset($_POST['page']) ? intval($_POST['page']) : 1;
        $rows = isset($_POST['rows']) ? intval($_POST['rows']) : 10;
        $offset = ($page - 1) * $rows;
        $sql = "Lixiao like '否'and Schoolname like '$_SESSION[schoolname]'";
        if ($name != '') {
            $sql1 = Name . ' like "' . $name . '"';
            $sql.="&&$sql1";
        }
        if ($idcard != '') {
            $sql2 = IDcard . ' like "' . $idcard . '"';
            $sql.="&&$sql2";
        }
        if ($coachname != '') {
            $sql3 = Coachname . ' like "' . $coachname . '"';
            $sql.="&&$sql3";
        }
        $rs = $tab->where($sql)->limit($offset, $rows)->select();
        $this->ajaxReturn($rs);
    }

然后调用参数写表名就行

__URL__/zaixiao_basic/?n=表名

__URL__/zaixiao_basic/?n=examinfo


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值