redirection après téléchargement
Posté : 21 avr. 2006, 19:52
Salut,
comment rediriger sur une autre page html ou php après avoir télécharger un fichier, le header ne marche pas.
voici le code:
comment rediriger sur une autre page html ou php après avoir télécharger un fichier, le header ne marche pas.
voici le code:
Code : Tout sélectionner
<?PHP
$file='install.exe';
If(file_exists($file))
{
// extension du fichier
$decomp = explode(".",$file);
$extfichier = $decomp[count($decomp)-1];
// Fichiers PHP : Ne pas télécharger !!!
If($extfichier != "php" && $extfichier != "php3" && $extfichier != "htaccess")
{
// Envoi des Headers HTTP : recharge / type binaire / taille du fichier
header("Pragma: no-cache");
header("Expires: 0");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-cache, must-revalidate");
header("Content-Type: octet-stream");
header("Content-Length: ".filesize($file));
// Juste le nom du fichier
$decomp = explode("/",$file);
$lefichier = $decomp[count($decomp)-1];
// Envoi du Header HTTP : Nom du fichier
header("Content-Disposition: attachment; filename=".$lefichier);
// Ouverture du fichier
$lecture = fopen($file,"r");
While(!feof($lecture))
{
// Lecture du fichier
$line = fread($lecture,255);
// Envoi du fichier vers le navigateur
Print($line);
flush();
}
}
Else
{
Print("Désolé, vous ne pouvez pas télécharger les fichiers au format PHP ");
Print("protection des données et copyright).");
}
}
Else
{
// Si le fichier n'existe pas
Print("Désolé, le fichier n'a pas été trouvé");
}
?>