Suppression d'un fichier en php
Bonjour,
Je souhaiterais pouvoir faire une suppression automatique d'un fichier en php. Je fais un module de news, et si je modifie l'image de cette news, je voudrais pouvoir supprimer celle qui existait déjà de mes dossiers.
Voici le code qui permettrait de traiter cela :
Code:
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
| <?php $id = $_POST["id"];
$ancien_fichier = mysql_query("SELECT image FROM news WHERE id=$id");
$result = mysql_query($ancien_fichier);
unlink('../../images/news/'.$result.'');
$nomFichier2 = $_FILES['Fichier']['name'];
$cheminFichier2 = $_FILES['Fichier']['tmp_name'];
// Création d'un nom unique avec time()
// Récupération du seul nom de fichier avec basename()
$nouveauNom2 = time() . "-" . basename($nomFichier2);
$nouveauFichier2 = REPERTOIRE_DEPOT . SEPARATEUR_FICHIERS . $nouveauNom2;
if (file_exists($nouveauFichier2)) {
die ('Le fichier existe déjà !');
}
// déplacement du fichier dans le répertoire dépôt
if (move_uploaded_file($cheminFichier2, $nouveauFichier2)) {
echo "";
}
else {
echo "Erreur au versement du fichier $nomFichier2 !";
}
// On protège la variable "id_news" pour éviter une faille SQL
$_POST['id_news'] = addslashes($_POST['id_news']);
// C'est une modification, on met juste à jour le titre et le contenu
mysql_query("UPDATE news SET titre='" . $titre . "', contenu='" . $contenu . "', image='" . $nouveauNom2 . "' WHERE id='" . $_POST['id_news'] . "'");?> |
et l'erreur que ca me renvoit :
Code:
Warning: unlink(../../images/news/) [function.unlink]: Permission denied in C:\wamp\www\Blog\pages\admin\cgi_news.php on line 50
Je ne comprends pas trop le bug, j'ajoute également que quand j'essaie de faire un echo de $ancien_fichier, ça me renvoie comme erreur : "Resource id #5"...