header et fichier zip
Posté : 03 juin 2016, 11:35
Bonjour à tous,
J'essaye d'envoyer un fichier zip au navigateur. Le fichier est bien envoyé mais quand j'essaye de l'ouvrir, j'ai le droit à ce message d'erreur :
Voici mon code :
J'essaye d'envoyer un fichier zip au navigateur. Le fichier est bien envoyé mais quand j'essaye de l'ouvrir, j'ai le droit à ce message d'erreur :
Pourtant le fichier source n'est pas endommagée et se dézip correctement.L'archive est endommagée ou son format est inconnu
Voici mon code :
$zipPath = 'c:\wamp\www\monfichier.zip';
if (headers_sent()) {
echo 'HTTP header already sent';
} else {
if (!is_file($zipPath)) {
header($_SERVER['SERVER_PROTOCOL'].' 404 Not Found');
echo 'File not found';
} else if (!is_readable($zipPath)) {
header($_SERVER['SERVER_PROTOCOL'].' 403 Forbidden');
echo 'File not readable';
} else {
while (ob_get_level()) {
ob_end_clean();
}
ob_start();
header($_SERVER['SERVER_PROTOCOL'].' 200 OK');
header("Content-Type: application/zip");
header("Content-Transfer-Encoding: Binary");
header("Content-Length: ".filesize($zipPath));
header('Pragma: no-cache');
header("Content-Disposition: attachment; filename=\"".basename($zipPath)."\"");
ob_flush();
ob_clean();
readfile($zipPath);
exit;
}
}
Merci d'avance pour votre temps consacré à mon problème.