Các bản tin khác
CakePHP Framework
CakePHP Framework: Tìm hiểu kỹ thuật phân trang
Qua loạt bài trước về CakePHP Framework, hẳn lúc này các bạn đã có góc nhìn tương đối về nguyên tắc làm việc của CakePHP. Nhất là chúng ta đã tìm hiểu về cách thức hoạt động đối với cơ sở dữ liệu trong CakePHP. Ở bài này, chúng ta tiếp tục tìm hiểu về kỹ thuật phân trang của CakePHP để hoàn thiện ứng dụng một cách đầy đủ hơn.
Để dễ dàng cho việc tương tác với cơ sở dữ liệu (CSDL). Trước tiên chúng ta cần cấu hình theo đường dẫn app/config/database.php thông tin kết nối vào hệ thống. (Xem lại bài CakePHP Framework cho người mới bắt đầu).
Sau khi đã kết nối vào hệ thống, tiếp đến ta tiến hành thực hiện các câu truy vấn sau để tiến hành tạo bảng dữ liệu mẫu, để phục vụ cho những đoạn code test bên dưới.
Tiếp tục, ta tạo Controller Books (app/controllers/books/books_controller.php)
- Để sử dụng chức năng phân trang của cakePHP thì trong Controller cần có thành phần helper Paginator :
và namespace paginate :
- Ở đây tôi lấy tất dữ liệu bắt đầu với 4 record đầu tiên vào theo thứ tự giảm dần theo “title”.
- Nếu chỉ lấy những 1 số field cần thiết :
- Để lấy dữ liệu theo cấu hình của biến namespace paginate ta dùng hàm $this->paginate(‘ten_model'), trong ví dụ này model của tôi có tên là Book.
- Việc cấu hình biến namspace paginate dùng hàm $this->paginate(‘ten_model')
Giống như việc cấu hình điều kiện truy xuất dữ liệu và lấy dữ liệu bằng hàm$this->find(‘…');.(Xem lại hàm truy vấn CSDL)
- Chúng ta chỉ cần cấu hình như vậy là có thể phân trang cho CSDL , mặc định cakePHP dùng biến page để xác định trang hiện tại.
Giống như việc cấu hình điều kiện truy xuất dữ liệu và lấy dữ liệu bằng hàm$this->find(‘…');.(Xem lại hàm truy vấn CSDL)
- Chúng ta chỉ cần cấu hình như vậy là có thể phân trang cho CSDL , mặc định cakePHP dùng biến page để xác định trang hiện tại.
Tiếp tục, ta tạo model Book (app/models/book.php)
Sau đó, ta tạo tiếp view(phần hiển thị) cho việc phân trang (app/views/books/paging.ctp)
Cuối cùng, ta chạy với đường dẫn sau để xem kết quả:

(Thái Thanh Phong)
4029
Bạn vẫn chưa hiểu rõ vấn đề ?. Bạn vẫn còn nhiều điều thắc mắc ?. Bạn gặp lỗi khi thực hành mã lệnh trên ?. Hãy tham gia diễn đàn QHOnline.Info để nhận được sự giúp đỡ từ phía cộng đồng nhanh nhất. Đồng thời tải những tài liệu giá trị tại diễn đàn. Việc đăng ký là hoàn toàn miễn phí, hãy đăng ký ngay để chúng tôi giúp đỡ bạn nhé.
Ghi rõ nguồn từ website QHOnline.Info - Khi bạn phát hành lại thông tin từ website này
PHP Framework những điều nên và không nên
Khái quát về PHP Framework
Học PHP như thế nào khi bạn chưa biết lập trình?
Tự học lập trình PHP dễ hay khó ?
Web 2.0 - Khái niệm và bản chất của chúng như thế nào ?



huuthangcnc (14:42 28/06/2011)
Rất cảm ơn thầy vì bài viếtnhưng thầy có thể viết tutorial về cách xây dựng một trang web cụ thể thì sẽ rất hay!Reply
Kenny (17:14 30/06/2011)
Chào bạn, huuthangcnc.Cám ơn về sự quan tâm của bạn. Chúng tôi sẽ nhanh chóng cập nhật thêm các bài viết hưỡng dẫn đầy đủ hơn trong việc xây dựng 1 trang web bằng cakephp Framework.
Đón đọc loạt bài mới của tác giả "Thái Thanh Phong" bạn nhé.
Reply
nguyễn thành luân (11:00 08/08/2011)
Thầy cho em hỏi trong controller có một hàm có 2 paginate . Em muốn phân trang thì phải làm thế nào ạ .Cảm ơn thầy !
Reply
Nguyễn thành trung (10:47 07/11/2011)
ý kiếm của bạn huuthangcnc rất hay, thầy đưa bài tập và hướng dẫn làm 1 webiste cụ thể cho bọn em làm theoReply