Page 1 sur 1

supprimer une piece jointe

Posté : 19 juin 2013, 09:19
par Pierre78160
Bonjour !

Apres avoir bien galéré pour ajouter une piece jointe dans ma base, il faut aussi que je puisse la supprimer !
Je n'est pas d'erreur spécifique, juste le message de mon code.
$fichier=$_GET['fichier'];

if(!isset($erreur)) //S'il n'y a pas d'erreur, on supprime
{
	 $dossier="delete\\";
	
     if(@unlink("upload/$fichier")) //Si la fonction renvoie TRUE, c'est que ça a fonctionné...
     {
			echo 'supression effectué avec succès !';
			$id=$_GET['id'];
			$sql="update activite_professionnelle set cv='$fichier' where id='$id'";
			mysql_query($sql);
			
     }
     else //Sinon (la fonction renvoie FALSE).
     {
          echo 'Echec de la suppression !';
     }
}
else
{
     echo $erreur;
}


Voila mon code, j'espere que vous pourrez m'aider !
Merci d'avance =)
a+

Re: supprimer une piece jointe

Posté : 19 juin 2013, 09:31
par Mazarini
Enlèves le @ devant unlink pour voir le message d'erreur et ajoute $fichier dans le message pour vérifier le contenu de la variable.

Tu peux également vérifier l'existence du fichier avec la fonction file_ exists() avant de le supprimer.

Re: supprimer une piece jointe

Posté : 19 juin 2013, 09:34
par Pierre78160
j'ai effectivement un message d'erreur maintenant ^^

( ! ) Warning: unlink(upload/cvv.txt') [<a href='function.unlink'>function.unlink</a>]: No such file or directory in C:\wamp\www\cvtheque\deletecv.php on line 67
Call Stack
# Time Memory Function Location
1 0.0005 682456 {main}( ) ..\deletecv.php:0
2 0.0116 689656 unlink ( ) ..\deletecv.php:67


Il faut que je rajoute un fichier ?

Re: supprimer une piece jointe

Posté : 19 juin 2013, 09:50
par Mazarini
Il faut d'abord vérifier l'existence du fichier dans le répertoire upload.
Ensuite en fonction du chemin de la page (sur le disque), trouver le chemin du répertoire upload. Soit un chemin absolu, soit un chemin relatif.

Si tu veux calculer le chemin et ne pas le fixer une fois pour toute, tu peux faire une page avec <?PHP phpinfo(); ?> et tu trouveras toutes les infos nécessaire ($_SERVER['document_root] ?)

Re: supprimer une piece jointe

Posté : 19 juin 2013, 14:33
par Pierre78160
j'ai essayéça :
	 if (file_exists("upload\\$fichier"))
     {
			//unlink($fichier);
			unlink("C:\\wamp\\www\\cvtheque\\upload\\$fichier");
			echo 'supression effectué avec succès !';
			$id=$_GET['id'];
			$sql="update activite_professionnelle set cv='$fichier' where id='$id'";
			mysql_query($sql);
			
     }
mais ça ne marche toujours pas

Re: supprimer une piece jointe

Posté : 19 juin 2013, 15:13
par moogli
afficher "C:\\wamp\\www\\cvtheque\\upload\\$fichier"
pour voir ce que cela donne.

tu peux aussi utiliser des ' et la concaténation histoire d'avoir un code plus clair 'C:\wamp\www\cvtheque\upload\.'$fichier


@+

Re: supprimer une piece jointe

Posté : 19 juin 2013, 15:24
par Mazarini
if (file_exists("upload\\$fichier")) ne doit pas être trouvé

Re: supprimer une piece jointe

Posté : 20 juin 2013, 11:24
par Pierre78160
RE

Je n'arrive pas a afficher le chemin et je ne sais pas comment trouver l'erreur :(

Re: supprimer une piece jointe

Posté : 20 juin 2013, 14:19
par Mazarini
$pathfic = "C:\\wamp\\www\\cvtheque\\upload\\$fichier";
if (file_exists($pathfic))      {
                        //unlink($fichier);
                        unlink($pathfic);
                        echo 'supression effectué avec succès !';
                        $id=$_GET['id'];
                        $sql="update activite_professionnelle set cv='$fichier' where id='$id'";
                        mysql_query($sql);
                        
} else {
   echo 'fichier inconnu : "',$pathfic,'"'; 
}

Edit : Attention, tu supprimes le fichier et après tu stockes son nom dans la base. Normal ? ou mise à blanc à faire ?

Re: supprimer une piece jointe

Posté : 20 juin 2013, 16:17
par Pierre78160
fichier incconu ^^'

Re: supprimer une piece jointe

Posté : 20 juin 2013, 20:27
par Mazarini
et $pathfic n'affiche rien ?

Re: supprimer une piece jointe

Posté : 21 juin 2013, 09:50
par Pierre78160
désolé pour le temps de réponse, j'ai pleins de choses a faire ^^

ça affiche le message d’erreur avec le chemin a la place de $pathific

Re: supprimer une piece jointe

Posté : 21 juin 2013, 09:56
par Mazarini
Et le chemin n'est pas bon ? Je ne suis pas devin.

Re: supprimer une piece jointe

Posté : 21 juin 2013, 10:08
par Pierre78160
eh bien il est censé être bon mais ça marche pas :/