Page 1 sur 1

Supprimer un fichier qui n'est pas en cours de téléchargemen

Posté : 23 nov. 2008, 17:56
par Nico128
Hello!

Voilà, le visiteur peut choisir les fichier à ajouter à l'archive. Mon script créé une archive zip puis envoie le lien pour le télécharger.

Mais il faut qu'après sont téléchargement, supprimer le fichier.

Il faudrait faire un script qui listes toutes les archives qui ont été générées, puis qui contrôle lesquelles ne sont pas en train d'être téléchargées, et les supprime.

Je sais pas vraiment si c'est possible, ou quels fonctions existent ?

Merci d'avance

[Note : ce message a été posté de manière anonyme avant d'être réattribué à son auteur]

Re: Supprimer un fichier qui n'est pas en cours de télécharg

Posté : 23 nov. 2008, 18:13
par sadeq
Hello!

Voilà, le visiteur peut choisir les fichier à ajouter à l'archive. Mon script créé une archive zip puis envoie le lien pour le télécharger.

Mais il faut qu'après sont téléchargement, supprimer le fichier.
Selon ce que tu did ici, c'est l'utilisateur qui démarre la procédure d'archivage, il serait donc judicieux que le programme de cette procédure fasse tout :
  • 1. Ajouter le fichier choisi par l'utilisateur à l'archive
    2. Créer l'archive
    3. Envoyer le fichier archive directement à l'utilisateur
    4. Supprimer l'archive envoyée

Posté : 23 nov. 2008, 18:32
par jojolapine
Et si tu n'arrives pas à reprendre là main pour l'étape quatre, et bien tu informe ton utilisateur que l'archive sera supprimer ou bout de par exemple 24h, et tu fais un système de purge...
(soit par cron, soit intégré à une de tes pages)

Posté : 23 nov. 2008, 19:05
par Nico128
Pour l'étape 4, admétons qu'il quitte le téléchargement, ou qu'il y a un plantage, la dernière instruction qui va supprimer le fichier ne vas pas se faire.

Pour la suppression au bout de 24h, je n'y avais pas pensé, c'est une idée ^^

Hum je viens de penser à quelque chose. Lorsque j'envoie au navigateur, j'envoie dans une boucle en plusieurs partie.
Après l'envoie, je met à jour dans une table l'heure, minute et seconde du dernier envoie.
Dans mon script qui supprimera les archive, je regarde si la l'heure du dernier envoie dépasse les 5mn par exemple.

Hum ça me parait du bricolage ma solution, ça risque de bien faire ramer la base je pense non ?

Posté : 23 nov. 2008, 19:35
par jojolapine
je ne pense pas que se soi une bonne idée de le faire après l'envoi, toujours par rapport à un éventuel plantage ou un arret de l'utilisateur, nan moi je me baserais sur un filemtime() de l'archive, et si ça dépasse tant de secondes, paf on supprime!