Hallo,
ich verwende bei mir auf der Homepage ein Downloadscript welches anhand einer ID eine Datei zurück gibt und eigentlich auch einen Dateinamen mit zurück geben soll. Das Script sieht wie folgt aus
Code:
<?
require "dbconnect.php";
$
query = "Select
url, filename from downloads where id = \"$id\"";
$res = mysql_query($
query, $link);
if ($row = mysql_fetch_row($res))
{
$fp = fopen($row[0],"r");
if ($fp)
{
header("Content-Type: application/zip");
header("Content-Disposition: attachment; filename=".$d[1]);
$str = fread($fp,filesize($row[0]));
print($str);
fclose($fp);
}
else
{
print("File not found.");
}
$
query = "update downloads set cnt = cnt + 1 where id = \"$id\"";
$res = mysql_query($
query, $link);
}
else
{
print("invalid ID");
}
?>
$d[1] hat bei einer der Abfragen den wert "desktopswitch.zip". Trotzdem wird zum Beispiel beim Opera die Datei als "download.zip" heruntergeladen (wenn die
url so aussieht: download.php?id=desktopswitch.zip). Bei anderen Browsern wird die Datei sogar als "download.php" heruntergeladen. Wie bekomm ich es hinn das der Browser die Datei wirklich als "desktopswitch.zip" herunterlädt? (ich kann ja kaum vom Nutzer erwarten das er die Datei selbst umbenennt um mit dieser arbeiten zu können)