Ich habe ein PHP-Skript (7,xx), das Daten erstellt und diese zum Download senden soll, Klappt alles so weit. Das einzige Problem ist, daß am Anfang der Daten zweimal nacheinander die BOM steht. Ich habe schon alles mögliche probiert, um den charset zu ändern oder die Daten zu konvertieren (iconv, str_replace usw.). Alles nutzlos. Ist auch egal, was für Daten ich sende oder ob ich die Datei erst auf dem Server zwischenspeicher und dann sende oder gleich direkt ausgebe. Wenn ich die Datei auf dem Server ablege, ist sie noch ohne BOM. Einmal BOM wäre ja OK, aber 2x ist falsch.
PHP-Code:
header('Content-type: text/xml; charset=ISO-8859-1');
header('Content-Disposition: attachment; filename="' . $titel . '.gpx"');
header("Cache-Control: no-cache");
header("Pragma: no-cache");
header('Content-Description: File Transfer');
header("Content-Transfer-Encoding: binary");
$gpxdata = "Test";
/*
$f = fopen('php://output', 'w');
fwrite($f, $gpxdata);
fclose($f);
*/
/*
$f = fopen('file.gpx', 'w');
fwrite($f, $gpxdata);
fclose($f);
readfile ('file.gpx');
*/
print $gpxdata;
Kommentar