Bonjour, Je m'explique :

le but est de supprimer l'enregistrement si le fichier est supprimer.

Rien ne se passe, même pas de message d'erreur ou de succès.

Besoin d'aide, merci d'avance & bonne après-midi.
class/imageManager.php

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
 
 
class imageManager {
 
    private $db;
 
    public function __construct($db) {
 
        $this->setDb($db);
    }
 
    public function setDb(PDO $dbh) {
 
        return $this->db = $dbh;
    }
 
    public function deleteImageData($filename) {
 
        $filename = $_GET['filename'];
 
        try {
 
            $sql = 'DELETE FROM images WHERE filename = :filename';
 
            $stmnt = $this->db->prepare($sql);
 
            $stmnt->bindParam(':filename', $filename);
 
            $stmnt->execute();
 
            $count = $stmnt->rowCount();
 
            return $count;
        }
        catch(PDOException $e) {
 
            echo 'Une erreur est survenue lors de la suppression des données dans la base.<br>
            Message d\'erreur : ' . $e->getMessage();
        }
    }
}
process/process-delete-image.php

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
 
if(isset($_GET['filename'])) {
 
    // Suppression des fichiers : images et vignette
 
    $path_images = IMAGE_DIR_PATH . $filename;
    $path_thumbs = THUMB_DIR_PATH . $filename;
 
    if(file_exists($path_images)) {
 
        if(!unlink($path_images)) {
 
            $message = '<p class="msg_error">Une erreur est survenue lors de la supression du fichier image.</p>';
        }
        else {
 
            $manager = new imageManager($db);
            $deleteImageData = $manager->deleteImageData($filename);
 
            if(true === $deleteImageData) {
 
                echo '<p class="msg_success">Le fichier a bien été supprimé.</p>';
            }
            else {
 
                $message = $deleteImageData;
            }
        }
    }
    else {
 
        $message = '<p class="msg_error">Le fichier image n\'existe pas.</p>';
    }
 
    if(file_exists($path_thumbs)) {
 
        if(!unlink($path_thumbs)) {
 
            $message = '<p class="msg_error">Une erreur est survenue lors de la supression du fichier vignette.</p>';
        }
        else {
 
            $manager = new imageManager($db);
            $deleteImageData = $manager->deleteImageData($filename);
 
            if(true === $deleteImageData) {
 
                echo '<p class="msg_success">Le fichier a bien été supprimé.</p>';
            }
            else {
 
                $message = $deleteImageData;
            }
        }
    }
    else {
 
        $message = '<p class="msg_error">Le fichier vignette n\'existe pas.</p>';
    }
}
admin/delete-image.php

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
 
<?php
 
require('../include/inc-connexion.php');
require('../include/inc-config.php');
require('../class/imageManager.php');
require('../process/process-delete-image.php');
 
?>
 
<!DOCTYPE html>
<html lang="fr">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Suppression d'image</title>
    <link rel="stylesheet" href="css/style.css">
</head>
<body>
    <div id="wrapper">
        <h1>suppression d'image</h1>
 
<?php
 
if(isset($message)) echo $message
if(isset($message)) echo $message
 
?>
 
</div>
</body>
</html>