Problême php fonction unlink
Résolu/Fermé
A voir également:
- Unlink php
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Php?id=1 - Forum PHP
- Alert php ✓ - Forum PHP
- Retour à la ligne php ✓ - Forum PHP
4 réponses
macgawel
Messages postés
664
Date d'inscription
mercredi 7 mai 2008
Statut
Membre
Dernière intervention
1 novembre 2008
89
4 juin 2008 à 15:37
4 juin 2008 à 15:37
Bonjour.
Le problème est relativement simple :
Le problème est relativement simple :
// 1. On crée un pointeur vers le répertoire '../dossier1/dossier2' MAIS ON NE CHANGE PAS DE REPERTOIRE $ouverture= opendir('../dossier1/dossier2'); // 2. On demande la suppression du fichier test.jpg DANS LE REPERTOIRE COURANT unlink('test.jpg'); // 3. On supprime le pointeur closedir($ouverture);
macgawel
Messages postés
664
Date d'inscription
mercredi 7 mai 2008
Statut
Membre
Dernière intervention
1 novembre 2008
89
4 juin 2008 à 16:02
4 juin 2008 à 16:02
Je n'explique rien, j'ai juste commenté ton code pour te montrer où ça cloche.
Tu as bien cerné la source du problème :
Le script est dans C:\wamp\www\site\gestion\ et tu veux supprimer C:\wamp\www\site\dossier1\dossier2\test.jpg.
Avec ta méthode :
0. Tu (enfin, plutôt PHP) es dans le répertoire C:\wamp\www\site\gestion\
1. Tu définis une varaible $ouverture qui pointe vers C:\wamp\www\site\dossier1\dossier2\
2.Tu demandes la suppression du fichier C:\wamp\www\site\gestion\test.jpg (vu que tu n'as pas bougé !)
Comme il n'existe pas, PHP te renvoie une erreur.
Ce que tu peux faire, c'est bêtement unlink ('../dossier1/dossier2/test.jpg'); sans faire de opendir...
Tu as bien cerné la source du problème :
Le script est dans C:\wamp\www\site\gestion\ et tu veux supprimer C:\wamp\www\site\dossier1\dossier2\test.jpg.
Avec ta méthode :
0. Tu (enfin, plutôt PHP) es dans le répertoire C:\wamp\www\site\gestion\
1. Tu définis une varaible $ouverture qui pointe vers C:\wamp\www\site\dossier1\dossier2\
2.Tu demandes la suppression du fichier C:\wamp\www\site\gestion\test.jpg (vu que tu n'as pas bougé !)
Comme il n'existe pas, PHP te renvoie une erreur.
Ce que tu peux faire, c'est bêtement unlink ('../dossier1/dossier2/test.jpg'); sans faire de opendir...
macgawel
Messages postés
664
Date d'inscription
mercredi 7 mai 2008
Statut
Membre
Dernière intervention
1 novembre 2008
89
4 juin 2008 à 16:34
4 juin 2008 à 16:34
Warning: unlink(../dossier1/dossier2/test.jpg) [function.unlink]: No such file or directory in C:\wamp\www\site\gestion\gestion_photos.php on line 78
Ca, ça veut dire qu'il ne trouve pas ton fichier test.jpg
Il est sensé être dans quel répertoire ?
Tu peux faire un test avant :
$fichier = '../dossier1/dossier2/test.jpg'; if ( is_file ($fichier) ) { unlink ( $fichier) ; }
ou utiliser $_SERVER["PATH_TRANSLATED"], qui te donne le répertoire courant (faire un echo $_SERVER["PATH_TRANSLATED"] t'aiderait peut-être à deboguer...)
Voici où se trouve le code : C:\wamp\www\site\gestion\gestion_photos.php
et voilà où se trouve le fichier, il y est c'est sûr : C:\wamp\www\site\gallerie\thermique\test.jpg
(cette fois j'ai mis les vrais noms ^^)
Quant au "echo $_SERVER["PATH_TRANSLATED"];" cela ne m'affiche rien..
(je ne sais plus si je l'ai précisé mais avec le chemin absolu cela ne marche pas non plus..)
et voilà où se trouve le fichier, il y est c'est sûr : C:\wamp\www\site\gallerie\thermique\test.jpg
(cette fois j'ai mis les vrais noms ^^)
Quant au "echo $_SERVER["PATH_TRANSLATED"];" cela ne m'affiche rien..
(je ne sais plus si je l'ai précisé mais avec le chemin absolu cela ne marche pas non plus..)
5 juin 2008 à 08:37
$ouverture= opendir("../dossier2/dossier2");
unlink("../dossier2/dossier2/test.jpg");
closedir($ouverture);
Bonne journée à tous.
16 juin 2012 à 18:16