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