Grüße Experten,
Ich habe ein PHP-Skript, das unsere Datenbank abfragt und eine CSV-Datei in einem Browser ausgibt. Das funktioniert großartig in FireFox, Safari und Chrome. Es funktioniert nicht in Internet Explorer, der standardmäßige Browser in unserem Gebäude (seufz). Ich kann die URL nicht veröffentlichen, da es sich um eine geschützte Website handelt und Ihnen nichts nützen würde.
In IE erhalte ich zwei Popup-Fenster, wenn ich den Link zu diesem Bericht anklicke:
1) Unable to download downloads.html from . Unable to open this Internet Site. The request site is either unavailable or cannot be found Please try again later.
2) ein Fenster für Informationen zu Downloads %: Dateiinformationen werden abgerufen: downloads.html von Verbleibende geschätzte Zeit: Herunterladen nach: Übertragungsrate: alle diese sind leer.
Also, ich habe eine Seite, downloads.html, die versucht, eine CSV-Datei zu erstellen. Ich bin mir nicht sicher, was in IE schiefgeht. Gibt es verschiedene Header, die ich ausprobieren kann? Ich habe bei meiner Suche keine gesehen.
Danke für jegliche Tipps...
Hier ist meine Funktion, die die Daten ausgibt:
# $data ist ein Array von Daten aus der Datenbank
function render_excel($data) {
# Header für Browser
header("Content-type: text/csv");
header("Content-Disposition: attachment; filename=file.csv");
header("Pragma: no-cache");
header("Expires: 0");
# Spaltenüberschriften
$column_headers = "Filename, Link zur Datei, Details, Eindeutige Betrachter\n";
$rows = '';
foreach($data as $foo => $arr){
$rows .= $arr['filename'].",";
$rows .= $arr['resource_url'].",";
$rows .= $arr['detail_url'].",";
$rows .= $arr['distinct_views']."\n";
}
print $column_headers;
print $rows;
}