Compression Gz d'un répertoire défectueuse

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Compression Gz d'un répertoire défectueuse

Re: Compression Gz d'un répertoire défectueuse

par Castor Gaspard » 18 juin 2010, 18:48

Merci, Stealth, ta suggestion fonctionne parfaitement.

Bien à toi,

Gaspard

Re: Compression Gz d'un répertoire défectueuse

par stealth35 » 18 juin 2010, 15:26

fais juste ca niveau des headers
header('Content-disposition: attachment; filename='.$name_file);
header('Content-Type: application/force-download');
readfile($file);

Re: Compression Gz d'un répertoire défectueuse

par Castor Gaspard » 18 juin 2010, 14:25

Bonjour,

Pour répondre à Lupuz, l'archive pèse sur le serveur 240,1 Kio (245841 octets). Après téléchargement, elle pèse 239,8 Kio (245536 octets).

Donc, en effet, il manquent 305 octets (!), qui doivent empêcher l'archive d'être décompressée sur mon poste de travail. :D

Mais où se perdent ces fameux octets, selon vous ?

Merci !

Gaspard

Re: Compression Gz d'un répertoire défectueuse

par Lupuz » 18 juin 2010, 09:56

Quelle taille fait ton archive ? sur le serveur et une fois téléchargée ?

Compression Gz d'un répertoire défectueuse

par Castor Gaspard » 18 juin 2010, 08:37

Bonjour,

Je voudrais proposer le téléchargement d'un fichier au format .Tart, à l'issue d'un traitement.

Or, malgré des dizaines de tests, je rencontre une erreur lors de la décompression du fichier sur mon ordinateur. J'obtiens le message (je suis sous Linux) :
gzip: stdin: unexpected end of file
tar: Unexpected EOF in archive
tar: Error is not recoverable: exiting now


Je suis surpris, car si je télécharge manuellement le .Gz, il se décompresse normalement.

Voici le code de ma page de téléchargement, appelée par un lien depuis la page principale : "<a href="download.php" title="télécharger le dossier avec les nouvelles images">Télécharger le dossier avec les nouvelles images</a>" ...
exec('tar -pczf pictures.tar.gz large/ medium/ small/'); // Je compresse les trois répertoires large, medium et small dans pictures
$file = 'pictures.tar.gz';
$name_file = 'pictures.tar.gz';
header('Content-disposition: attachment; filename='.$name_file);
header('Content-Type: application/force-download');
header('Content-Transfer-Encoding: file');
header('Content-Length: '.filesize($file));
header('Pragma: no-cache');
header('Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0');
header('Expires: 0');
readfile($file);
Mes deux pages ont bien les droits à 755.

Merci pour votre aide. :mrgreen:

Cordialement,

Gaspard