Xây dựng controller post

Contents

Chuẩn bị cơ sở dữ liệu: . 2

Tạo controller , view, model . 2

View/post/new.phtml . 3

Post/new.php . 5

Models/post/model_post.php . 7

Upload ảnh . 7

Post/list.php . 8

Views/post/list/phtml . 9

Post/view.php . 10

View/post/view.phtml . 11

pdf11 trang | Chuyên mục: PHP | Chia sẻ: dkS00TYs | Lượt xem: 1948 | Lượt tải: 1download
Tóm tắt nội dung Xây dựng controller post, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
Bài 4. Xây dựng controller post 
Nghiêm Đình Mừng 
Bài viết là thành phần căn bản của một website, mỗi bài viết là do một user nhất định đăng lên và chỉ 
có user này mới có quyền sửa bài viết của mình. Đồng thời mỗi bài viết có thể thuộc một số chuyên 
mục nào đó. 
Contents 
Chuẩn bị cơ sở dữ liệu: ........................................................................................................................... 2 
Tạo controller , view, model ................................................................................................................... 2 
View/post/new.phtml ............................................................................................................................. 3 
Post/new.php .......................................................................................................................................... 5 
Models/post/model_post.php ................................................................................................................ 7 
Upload ảnh .............................................................................................................................................. 7 
Post/list.php ............................................................................................................................................ 8 
Views/post/list/phtml ............................................................................................................................. 9 
Post/view.php ....................................................................................................................................... 10 
View/post/view.phtml .......................................................................................................................... 11 
2 Hướng dẫn lập trình php căn bản 
Nghiêm Đình Mừng 
Chuẩn bị cơ sở dữ liệu: 
Đầu tiên chúng ta tạo bảng category để lưu trữ chuyên mục của bài viết: 
Sau đó các bạn thêm một vài chuyên mục vào bảng ví dụ: 
Và bây giờ là bảng post để lưu trữ thông tin bài viết: 
Tạo controller , view, model 
Các bạn tạo thư mục mới post , và trong view tạo thư mục mới post. 
Trong controller post các bạn tạo 5 action là new.php,view.php, edit.php, list.php, delete.php tương 
ứng trong view sẽ là new.phtml,view.phtml,edit.phtml,list.phtml,delete.phtml 
Đồng thời chúng ta cũng phải tạo model post cho controller này: 
3 Hướng dẫn lập trình php căn bản 
Nghiêm Đình Mừng 
View/post/new.phtml 
Đầu tiên chúng ta tạo file view cho action new(thêm bài viết mới). Đầu tiên chúng ta phải thêm layout 
cho file view này: 
Các bạn vào post/new.php include view này vào: 
4 Hướng dẫn lập trình php căn bản 
Nghiêm Đình Mừng 
Sau đó chúng ta tạo 1 form để thêm bài viết mới trong file views/post/new.phtml 
Kết quả: 
5 Hướng dẫn lập trình php căn bản 
Nghiêm Đình Mừng 
Post/new.php 
Tạm thời xong phần view, chúng ta đến phần controller. Do mỗi bài viết là của một user nhất định, do 
vậy ta phải kiểm tra xem có user đăng nhập hay không, nếu có thì lấy id của user này, nếu không thì 
chuyển sang trang login: 
Sau phần lấy thông tin user là phần kiểm tra xem user có nhấn nút thêm bài viết không ? nếu có kiểm 
tra xem thông tin có đầy đủ hày không và báo lỗi nếu có. Các bạn thêm vào view đoạn lệnh sau trước 
form để thông báo lỗi: 
6 Hướng dẫn lập trình php căn bản 
Nghiêm Đình Mừng 
Sau đây là phần xử lý thêm bài viết: 
Ví dụ chưa chọn ảnh bìa 
Bây giờ đến phần xử lý chèn thêm bài viết mới: 
7 Hướng dẫn lập trình php căn bản 
Nghiêm Đình Mừng 
Ta thấy phần code trên có gọi đến class post và hàm inser_post(). Hàm này ở trong model mà ta sẽ 
làm sau đây: 
Models/post/model_post.php 
Upload ảnh 
Vậy là xong phần chèn dữ liệu, bây giờ đến việc chèn thêm ảnh bìa. Mình sẽ xây dựng một hàm 
upload ảnh trong file Lib/lib.php 
Đầu tiên chúng ta tạo thư mục files/images để lưu ảnh: 
Bây giờ thêm hàm upload ảnh vào file lib/lib.php 
8 Hướng dẫn lập trình php căn bản 
Nghiêm Đình Mừng 
Câu hỏi đặt ra cho các bạn tại sao $path lại là “../files/images/”? 
Các bạn gọi thêm hàm upload ảnh sau khi chèn bài viết mới và thêm thông báo đăng bài viết thành 
công: 
Post/list.php 
Tiếp theo là action hiển thị danh sách các bài viết của một user 
Các bạn thêm hàm lấy danh sách bài viết của một user trong file models post 
(models/post/model_post.php) 
Tương tự như file new.php, file list.php cũng phải kiểm tra xem user có đăng nhập hay không và lấy 
thông tin về user. Sau đó chúng ta sẽ lây bài viết của user đó bằng hàm get_post_for_user() 
9 Hướng dẫn lập trình php căn bản 
Nghiêm Đình Mừng 
Views/post/list/phtml 
Chúng ta sử dụng 1bảng và dùng vòng lặp để hiển thị danh sách bài viết của user: 
10 Hướng dẫn lập trình php căn bản 
Nghiêm Đình Mừng 
Post/view.php 
Thêm bài viết thì phải hiển thị bài viết, để có thể lấy được id của bài viết mình sẽ truyền qua phương 
thức GET kiểu như sau: http:/myweb/post/view.php?id=3 vây 3 là mã id của bài viết. Và ta sẽ lấy 
được biến này bằng phương thức sau $id = $_GET[‘id’] 
Trong phần code trên ta thấy có gọi hàm get_user_by_user_id() hàm này chưa có trong models user 
các bạn phải bổ sung như sau: 
11 Hướng dẫn lập trình php căn bản 
Nghiêm Đình Mừng 
View/post/view.phtml 
Ok nếu thêm css sẽ đẹp hơn, tạm thời thế này đã: 
Phần edit bài viết tương tự như phần thêm bài viết các bạn chỉ cần dùng lênh update trong sql là ok. 
Phần xóa bài viết thì cũng rất đơn giản, các bạn tự làm. 
Chúc các bạn học tốt và sớm thành công. 

File đính kèm:

  • pdfXây dựng controller post.pdf
Tài liệu liên quan