ingobar: Datei nicht auf Server sondern lokal speichern?

Beitrag lesen

das Schreiben wird bei mir über AJAX angestoßen.

Und warum - weil's so "hipp" ist?

Nein. Ich simuliere eine Datenbanksystem und möchte die erzeugten Tabellen etc. in einem File speichern. Damit sich nicht die Anzeige ändert, habe ich AJAX benutzt.

Vermutlich eher nicht - bzw. du kannst mit der Antwort des Servers wenig anfangen; Javascript kann naemlich keine Dateien auf dem Client erzeugen.

Du meinst speichern, oder?

Ja, dass man keine physische Datei auf dem Server braucht, wenn die Daten per Script dynamisch ermittelt werden, schrieb ich bereits.

Aber leider nicht wie genau. Und anscheinend habe ich nicht genug Ahnung von der Sache als das ich deine Tipps so einfach umsetzen kann.

Schau zunaechst nach, welche Header der Client erhaelt - bspw. mit der LiveHTTPHeaders-Exentsion fuer den Firefox oder mit FireBug.

Ich versuche mal mit Firebug irgendwas herauszufinden....

.. hat leider nichts gebracht. Ich kann so etwas wie LiveHTTPHeaders-Exentsion nirgends wo entdecken. Allerdings habe ich auch noch nie mit Firebug gearbeitet. Ich habe immer noch den selben Effekt: Es öffnet sich ein Fenster und es wird einfach der Inhalt der Datei angezeigt. Dabei ist noch zu betonen, dass Firefox anzeigt, dass die Übertragung nicht aufhört (erkennbar am Ladebalken).

Nochmals hier mein Code:

$data = utf8_encode($data);
 $filename="test20080219_054356";
 header('Content-type: application/force-download');
 header('Content-Disposition: attachment; filename="' . $filename. '"');
 header("pragma: no-cache");
 header("expires: 0");

readfile($filename);

Das ist alles.

Vielleicht noch eine Erklärung für Doofe? Wäre super!