1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87
| <?php
require_once 'Database.php';
//Class pour le CRUD sur les tâches
class Crud {
//Fonction qui insert une tâche dans la DB
public function insert($id, $title, $description, $importance, $due_date, $start_date,
$parent, $status, $category, $prerequisite, $created_at, $updated_at, $end_date, $estimated_time, $display_order) {
$db = new Database;
$sql = "INSERT INTO tasks (id_task, title, description, importance, due_date, start_date,
parent, status, category, prerequisite, created_at, updated_at, end_date, estimated_time, display_order)
VALUES (:id_task, :title, :description, :importance, :due_date, :start_date, :parent, :status, :category,
:prerequisite, :created_at, :updated_at, :end_date, :estimated_time, :display_order)";
try {
$stmt = $db->db_connexion()->prepare($sql);
$stmt->execute(array(':id_task' => $id, ':title' => $title, ':description' => $description, ':importance' => $importance, ':due_date' => $due_date, ':start_date' => $start_date,
':parent' => $parent, ':status' => $status, ':category' => $category, ':prerequisite' => $prerequisite, ':created_at' => $created_at,
':updated_at' => $updated_at, ':end_date' => $end_date, ':estimated_time' => $estimated_time, ':display_order' => $display_order));
return $this->$db->db_connexion()->lastInsertId();
} catch (Exception $e) {
//s'il y a un problème PHP ou SQL, tout s'affichera ici
print "Erreur ! " . $e->getMessage() . "<br/>";
}
}
//Fonction qui va lire toutes les tâches de la DB
public function readTasks() {
$db = new Database;
$data = array();
$sql = "SELECT * FROM tasks";
$stmt = $db->db_connexion()->prepare($sql);
$stmt->execute();
$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
foreach ($result as $row) {
$data[] = $row;
}
return $data;
}
//Fonction qui va lire une tâche dans la DB sue base de son id.
public function getTaskById($id) {
$sql = "SELECT * FROM tasks WHERE id = :id";
$stmt = $this->conn->prepare($sql);
$stmt->execute(['id' => $id]);
$result = $stmt->fetch(PDO::FETCH_ASSOC);
return $result;
}
//Fonction qui va mettre à jour une tâche dans la DB sur base de son id.
public function updateTask($id, $title, $description, $importance, $due_date, $start_date,
$parent, $status, $category, $prerequisite, $created_at, $updated_at, $end_date, $estimated_time, $display_order) {
$sql = "UPDATE tasks SET title = :title, description = :description, importance = :importance, due_date = :due_date, "
. "start_date = :start_date, parent = :parent, status = :status, category = :category, prerequisite = :prerequisite, "
. "created_at = :created_at, updated_at = :updated_at, end_date = :end_date, estimated_time = :estimated_time, "
. "display_order = :display_order WHERE id = :id";
$stmt = $this->conn->prepare($sql);
$stmt->execute(['title' => $title, 'description' => $description, 'importance' => $importance, 'due_date' => $due_date, 'start_date' => $start_date,
'parent' => $parent, 'status' => $status, 'category' => $category, 'prerequisite' => $prerequisite, 'created_at' => $created_at,
'updated_at' => $updated_at, 'end_date' => $end_date, 'estimated_date' => $estimated_time, 'display_order' => $display_order, 'id' => $id]);
return true;
}
//Fonction qui efface une tâche que base de son ID
public function deleteTask($id) {
$sql = "DELETE FROM tasks WHERE id = :id";
$stmt = $this->conn->prepare($sql);
$stmt->execute(['id' => $id]);
return true;
}
//Fonction qui renvoi le nombre de tâche dans la DB
public function totalTasks() {
$db = new Database;
$sql = "SELECT * FROM tasks";
$stmt = $db->db_connexion()->prepare($sql);
$stmt->execute();
$totalTask = $stmt->rowCount();
return $totalTask;
}
}
//$object = new Database();//connexion à la DB
//print_r($object->read());//test fonction read
//echo $object->totalTasks();//test fonction totalTasks |
Partager