Content-Disposition: attachment - PHP - Programmation
Marsh Posté le 12-05-2004 à 20:56:48
rajoutes ça : header("Content-Type: application/force-download" );
Marsh Posté le 13-05-2004 à 09:40:07
Merci misterpinguin,
Cependant superzut, j'ai un version d'IE 6.0.2600.0000 et lorsque je teste le script, il ne me propose pas la fenêtre de téléchargement, il me met simplement une page blanche avec une croix en haut à gauche.
Marsh Posté le 13-05-2004 à 10:24:00
Ksmnote a écrit : Merci misterpinguin, |
ça veut dire qu'il cherche une image qu'il ne trouve pas
Marsh Posté le 14-05-2004 à 10:02:36
????
Alors c'est très bizarre...
Ca marche en I5.5 puis en IE6 dernière version mais par en IE6 première version.
Si je suis le raisonnement de misterpinguin, c'est donc le fichier qui n'est pas trouvé.
Comment c'est possible que dans un cas il trouve la photo dans l'autre non ???
Marsh Posté le 12-05-2004 à 13:28:29
Salut à tous,
Le script suivant me permet de télécharger des photos depuis une photothèque. Petit problème de compatibilité cependant avec certaines version d'IE, même IE6.
J'ai déjà fait plusieurs tests, mais là je bloque un peu...
Auriez-vous quelques pistes qui pourrait m'aider ?
Merci
<?
$db_link = mysql_connect($sql_serveur,$sql_user,$sql_passwd);
$requete=mysql_db_query($sql_bdd,"SELECT fichier72, fichier300, diffusion from extrait where id=\"$id\"",$db_link);
$laReq=mysql_fetch_array($requete);
if($typ=="300" ){
$filename = "../admin/photo300/$laReq[1]";
//echo $filename;
}else{
$filename = "../admin/photo72/$laReq[0]";
//echo $filename;
}
$ext = substr( $filename,-3 );
if( $filename == "" ) {
echo "<html><body>ERROR: Empty file to download. USE download.php?file=[file path]</body></html>";
exit;
} elseif ( ! file_exists( $filename ) ) {
echo "<html><body>Erreur: Le fichier que vous souhaitez télécharger n'a pas été trouvé. Veuillez contacter l'administrateur du site.</body></html>";
exit;
};
switch( $ext ){
case "pdf": $ctype="application/pdf"; break;
case "exe": $ctype="application/octet-stream"; break;
case "zip": $ctype="application/zip"; break;
case "doc": $ctype="application/msword"; break;
case "xls": $ctype="application/vnd.ms-excel"; break;
case "ppt": $ctype="application/vnd.ms-powerpoint"; break;
case "gif": $ctype="image/gif"; break;
case "png": $ctype="image/png"; break;
case "jpg": $ctype="image/jpg"; break;
default: $ctype="application/force-download";
}
header("Pragma: public" );
header("Expires: 0" );
header("Cache-Control: must-revalidate, post-check=0, pre-check=0" );
header("Content-Type: $ctype" );
$user_agent = strtolower ($_SERVER["HTTP_USER_AGENT"]);
if ((is_integer (strpos($user_agent, "msie" ))) && (is_integer (strpos($user_agent, "win" )))) {
header( "Content-Disposition: filename=".basename($filename).";" );
} else {
header( "Content-Disposition: attachment; filename=basename($filename);" );
}
header("Content-Transfer-Encoding: binary" );
header("Content-Length: ".filesize($filename));
readfile("$filename" );}
exit();
?>