Thêm Sửa Xóa Mvc Php

Trong bài xích trước họ đã làm chức năng hiển thị list bài viết. Tiếp theo trong bài xích này, chúng ta sẽ viết tiếp 2 tác dụng sửa cùng xóa nội dung bài viết để hoàn tất module bài viết.

Bạn đang xem: Thêm sửa xóa mvc php


Vì là trang sửa đổi bài viết, đề nghị nội dung của chúng bao gồm phần đang giống với phần thêm bài xích viết, chỉ khác là các ô nhập liệu giờ đây đã có dữ liệu. Dữ liệu này bọn họ tiến hành đem từ đại lý dữ liệu thông qua biến truyền mà ở danh sách bài viết đã gửi editPost.php?postId=$id. Phát triển thành $id đang là quý giá id của nội dung bài viết mà chúng ta truyền vào.
Sau khi thiết kế xong phần giao diện, để hiển thị họ cần require nó vào controller, sản xuất file Controller/admin/editPost.php:
Chạy chương trình theo đường dẫn:http://localhost/blog/View/admin/?controller=editPost&postId=$idđể coi kết quả, biến hóa $id sẽ là id bài viết mà bạn có nhu cầu chỉnh sửa.
*

Để luôn tiện cho vấn đề chỉnh sửa, họ cần in phần đa nội dung cũ cơ mà ta sẽ thêm trước đó vào size chỉnh sửa. Viết hàm getPost trong file để thực hiện thao tác lấy dữ liệu nội dung bài viết theo id.

Xem thêm: Phần Mềm Tính Điểm Tb Môn Cho Học Sinh Và Sinh Viên Trong Excel


public function getPost($postId){$sql = "https://obatambeienwasirherbal.com/SELECT * FROM posts WHERE id = $postId"https://obatambeienwasirherbal.com/;$result = $this->db->conn->query($sql);$data = $result->fetch_array();return $data;
Ta thấy trong khung sửa bài viết có mục chọn chuyên mục, để hiện thị toàn bộ chuyên mục thì bọn họ cần đem tất cả thể loại có vào CSDL, sửa tệp tin Controller/admin/editPost thành:
<?phpclass EditPost public function __construct()require_once("https://obatambeienwasirherbal.com/../../Model/admin/category.php"https://obatambeienwasirherbal.com/);require_once("https://obatambeienwasirherbal.com/../../Model/admin/post.php"https://obatambeienwasirherbal.com/);$categoryModel = new categoryModel;$postModel = new PostModel;if (isset($_GET<"https://obatambeienwasirherbal.com/postId"https://obatambeienwasirherbal.com/>)) $postId = $_GET<"https://obatambeienwasirherbal.com/postId"https://obatambeienwasirherbal.com/>;$categories = $categoryModel->categoryList(); /*lấy toàn bộ thể loại trong bảng categories*/$postOld = $postModel->getPost($postId);require("https://obatambeienwasirherbal.com/pages/post/edit.php"https://obatambeienwasirherbal.com/);
Hiển thị dữ liệu cũ vào form chỉnh sửa bài viết, lúc ấy file View/admin/pages/post/edit.php trở thành:
Sau khi đã làm xong công việc ở trên, cuối cùng chúng ta bắt tay vào làm công dụng sửa bài viết. Viết hàmeditPost bên Model, hàm nàycó chức năngchỉnh sửa bài viết trong file Model/admin/post.php:
public function editPost($id, $title, $slug, $summary, $content, $categoryId, $image)$title = $this->db->conn->real_escape_string($title);$slug = $this->db->conn->real_escape_string($slug);$summary = $this->db->conn->real_escape_string($summary);$content = $this->db->conn->real_escape_string($content);$sql = "https://obatambeienwasirherbal.com/UPDATE posts set title = "https://obatambeienwasirherbal.com/$title"https://obatambeienwasirherbal.com/, slug = "https://obatambeienwasirherbal.com/$slug"https://obatambeienwasirherbal.com/, summary = "https://obatambeienwasirherbal.com/$summary"https://obatambeienwasirherbal.com/, content = "https://obatambeienwasirherbal.com/$content"https://obatambeienwasirherbal.com/, category_id = "https://obatambeienwasirherbal.com/$categoryId"https://obatambeienwasirherbal.com/, image = "https://obatambeienwasirherbal.com/$image"https://obatambeienwasirherbal.com/ WHERE id = $id "https://obatambeienwasirherbal.com/;return $this->db->conn->query($sql);
<?phpclass EditPost public function __construct()require_once("https://obatambeienwasirherbal.com/../../Model/admin/category.php"https://obatambeienwasirherbal.com/);require_once("https://obatambeienwasirherbal.com/../../Model/admin/post.php"https://obatambeienwasirherbal.com/);$categoryModel = new categoryModel;$postModel = new PostModel;if (isset($_GET<"https://obatambeienwasirherbal.com/postId"https://obatambeienwasirherbal.com/>)) $postId = $_GET<"https://obatambeienwasirherbal.com/postId"https://obatambeienwasirherbal.com/>;$categories = $categoryModel->categoryList(); /*lấy toàn bộ thể loại trong bảng categories*/$postOld = $postModel->getPost($postId);if (isset($_POST<"https://obatambeienwasirherbal.com/editPost"https://obatambeienwasirherbal.com/>)) $title = $_POST<"https://obatambeienwasirherbal.com/title"https://obatambeienwasirherbal.com/>;$slug = changeTitle($title);$summary = $_POST<"https://obatambeienwasirherbal.com/summary"https://obatambeienwasirherbal.com/>;$content = $_POST<"https://obatambeienwasirherbal.com/content"https://obatambeienwasirherbal.com/>;$categoryId = $_POST<"https://obatambeienwasirherbal.com/category_id"https://obatambeienwasirherbal.com/>;/** * còn nếu như không chọn ảnh thì mang tên ảnh trong input tất cả name là image_old * ngược lại thì rước tên hình ảnh theo $slug với lưu vào Public/upload/post * tiến hành sửa bài viết bằng hàm editPost bên model *
var array */if (isset($_FILES<"https://obatambeienwasirherbal.com/image"https://obatambeienwasirherbal.com/>) && $_FILES<"https://obatambeienwasirherbal.com/image"https://obatambeienwasirherbal.com/><"https://obatambeienwasirherbal.com/error"https://obatambeienwasirherbal.com/> > 0) $image = $_POST<"https://obatambeienwasirherbal.com/image_old"https://obatambeienwasirherbal.com/>; else $ext = pathinfo($_FILES<"https://obatambeienwasirherbal.com/image"https://obatambeienwasirherbal.com/><"https://obatambeienwasirherbal.com/name"https://obatambeienwasirherbal.com/>, PATHINFO_EXTENSION);$image = $slug . "https://obatambeienwasirherbal.com/."https://obatambeienwasirherbal.com/ . $ext;move_uploaded_file($_FILES<"https://obatambeienwasirherbal.com/image"https://obatambeienwasirherbal.com/><"https://obatambeienwasirherbal.com/tmp_name"https://obatambeienwasirherbal.com/>, "https://obatambeienwasirherbal.com/../../Public/upload/posts/"https://obatambeienwasirherbal.com/ . $image);$postModel->editPost($postId, $title, $slug, $summary, $content, $categoryId, $image);require("https://obatambeienwasirherbal.com/pages/post/edit.php"https://obatambeienwasirherbal.com/);
Như vậy mình đã hướng dẫn các bạn hoàn thành công dụng sửa bài bác viết. Nếu gồm gì không hiểu nhiều hãy comment bên dưới để được giải đáp. Chúc chúng ta thành công!.
Đối với trang xóa dữ liệu, bọn họ cũng không cần phải xử lý vượt nhiều. Bởi nhiệm vụ của bọn chúng chỉ dễ dàng là xóa đi đông đảo dòng trong bảng.
public function deletePost($postId)$sql = "https://obatambeienwasirherbal.com/DELETE FROM posts WHERE id = $postId"https://obatambeienwasirherbal.com/;return $this->db->conn->query($sql);
Tiếp theo bên Controller, call hàmdeletePost để tiến hành xóa bài bác viết, chế tạo ra file Controller/admin/deletePost.php với thưc thi các lệnh sau:
<?phpclass DeletePost public function __construct()require_once("https://obatambeienwasirherbal.com/../../Model/admin/post.php"https://obatambeienwasirherbal.com/);$postModel = new PostModel();if (isset($_GET<"https://obatambeienwasirherbal.com/postId"https://obatambeienwasirherbal.com/>)) $postId = $_GET<"https://obatambeienwasirherbal.com/postId"https://obatambeienwasirherbal.com/>;$postModel->deletePost($postId);header("https://obatambeienwasirherbal.com/Location: ?controller=listPost"https://obatambeienwasirherbal.com/);require("https://obatambeienwasirherbal.com/pages/category/add.php"https://obatambeienwasirherbal.com/);
Như vậy tôi đã hướng dẫn chúng ta hoàn thành tác dụng sửa cùng xóa bài viết. Nếu có gì không hiểu hãy comment bên dưới để được giải đáp.