【问题标题】:how to use limit in codeigniter controller如何在codeigniter控制器中使用限制
【发布时间】:2018-01-09 14:13:56
【问题描述】:

我正在做 ajax 滚动分页。控制器如下所示

<?php
require APPPATH . '/controllers/user/Usercontroller.php';

class PaginationController extends Usercontroller{

    public function __construct(){
        parent::__construct();
        $this->load->model("Usermodel","",true);    
    }

    private $perPage = 5;

    public function index(){
        $tutorId=$this->session->userdata('cp_userid');
        $categorycourses=$this->Usermodel->getcourses($tutorId);

        $count = $categorycourses->num_rows();

        $data['details']=$categorycourses;          
        $this->load->view("user/pagination_view",$data,true);
    }
}
?>

$count 变量包含 5 个数据,我想为第一页发送 3 个数据,为第二页发送剩余的数据。如何做到这一点。

【问题讨论】:

    标签: php ajax pagination codeigniter-3


    【解决方案1】:

    试试这个……

    型号:

    function getcourses($tutorId, $limit = null) {
        $this->db->select('*');
        $this->db->from('courses');
        $this->db->where("tutorId", $tutorId);
        //$this->db->order_by("name", "asc");
    
        if($limit!=''){
           $this->db->limit($limit);
        }
        $query  = $this->db->get();
    
        $courses = array();
        foreach ($query->result() as $row)
            array_push($courses, $row);
    
        return $courses;     
    }
    

    控制器:

    public function index(){
        $tutorId = $this->session->userdata('cp_userid');
        $limit = 3;
        $categorycourses = $this->Usermodel->getcourses($tutorId, $limit);
        //$categorycourses=$this->Usermodel->getcourses($tutorId);
    
        $count = $categorycourses->num_rows();
    
        $data['details'] = $categorycourses;      
    
        $this->load->view("user/pagination_view", $data, true);
    }
    

    【讨论】:

    • 我的型号代码是public function getcourses($id){ //getcoursebasic $sql="SELECT courseId, title FROM course c INNER JOIN category s ON c.categoryId=s.categoryId INNER JOIN users u ON c.userId=u.userId AND c.isCompleted=2 AND c.isPublished=1 WHERE u.userId != $id"; $query=$this-&gt;db-&gt;query($sql); return $query; }
    • 这里如何使用 limt
    • 试试这个代码:public function getcourses($id, $limit = null){ //getcoursebasic $this-&gt;db-&gt;select('*'); $this-&gt;db-&gt;from('course as c'); $this-&gt;db-&gt;join('category as s', 'c.categoryId = s.categoryId'); $this-&gt;db-&gt;join('users as u', 'c.userId = u.userId AND c.isCompleted=2 AND c.isPublished=1'); $this-&gt;db-&gt;where('u.userId !=', $id); if($limit!=''){ $this-&gt;db-&gt;limit($limit); } $query = $this-&gt;db-&gt;get(); return $query; }
    猜你喜欢
    • 2019-01-16
    • 2014-03-09
    • 1970-01-01
    • 2015-09-13
    • 1970-01-01
    • 2013-12-25
    • 2011-12-22
    • 2010-11-11
    • 2011-08-30
    相关资源
    最近更新 更多