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();
?>