Tengo un script que toma una clave de $ _GET ['clave'], busca la ubicación en una base de datos y usa el archivo de lectura junto con algunos encabezados para presentar una descarga para el utilizar. Esto funciona en Firefox pero no en IE8, no se ha podido probar en otro IE. Aparece el siguiente error en IE: "Internet Explorer no puede descargar download.php desde www.example.com". Como si estuviera intentando descargar el script PHP.Script PHP para descargar el archivo que no funciona en IE
$the_query = "SELECT * FROM `files` WHERE `user_id`=" . $_SESSION['user_id'] . " AND `key`='" . $key . "'";
$result = mysql_query($the_query);
$row = mysql_fetch_array($result);
$file = '/var/www/vhosts/www.example.com/httpsdocs/uploads/' . $row['id'] . '/' . $row['file'];
header("Content-type: application/octet-stream");
header("Content-length: ".filesize($file));
header('Content-Description: File Transfer');
header("Cache-control: private");
header('Content-Disposition: attachment; filename=' . rawurlencode(basename($file)));
readfile($file);
eche un vistazo a la inyección SQL y mysql_real_escape_string. Esta pieza de código es vulnerable. – erenon
Oh señor sí, por favor use mysql_real_escape_string – AaronLS
No sé mucho sobre esto, pero puede tener algo que ver con la extensión de archivo en $ archivo – AaronLS