Bonjour, j'ai une fonction de suppression d'un fichier mais pour l'instant je n'arrive qu'as supprimer l'enregistrement du chemin contenu dans mysql.
Il faut que je supprimer physiquement ce fichier, j'ai donc utilisez la fonction unlink mais j'ai quelque difficulté a récupérer le nom du dossier (categorie) afin d'avoir le chemin complet.
Dans le constructeur je passe :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 function deletePictures(){ $ldb = new DbAdminLoadGalery(); $this->smarty->assign('delete', $this->delete); if(isset($this->delete)){ unlink('../../../galery/'.$this->category.$this->delete); $ldb->deleteDbPictures(); $this->smarty->assign('msg','<div class="msg">pictures delete database</div>'); } }
Ce qui supprime bien de mysql le nom du fichier mais je ne vois pas comment récupérer la catégorie dans mon unlink.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 if(isset($_GET['delete'])){ $this->delete = $_GET['delete']; }
Ma requete :
pict_name n'est que le nom du fichier mais la catégorie ce trouve dans une autre table.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 function deleteDbPictures(){ global $connStr,$user,$pass; $dbh = new PDO($connStr, $user, $pass); $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $stmt = $dbh->prepare("DELETE FROM db_galery WHERE pict_name = :delete"); $stmt->bindParam(':delete', $this->delete); $stmt->execute(); $stmt->closeCursor(); $stmt = null; }
Pensez vous que je dois faire une jointure pour récupére le nom de la catégorie ceci sans la supprimez.
Dois je faire un select en plus ?
Partager