Hi,
ich habe eine Webseite mit einem Button "Export". Wird dieser angeklickt, muss ein PHP Script aufgerufen werden, welches aus einer DB Daten holt und diese zu einer Datei zusammen bastelt. Wenn das erledigt ist, sollte die fertige Datei an den Client geschickt werden.
Für den User muss es also so aussehen:
Klick auf den Button -> Irgendein Popup öffnet sich in dem steht "Erstelle Datei..." -> Das Popup verschwindet und der Browser-Typische Requester zur Auswahl was man mit einer Downloaddatei anstellen will geht auf (oder auch gar nicht wie beim Safari, der es ja einfach direkt nach DownLoads speichert) und die Datei wird runtergeladen.
Ich mache im Moment folgendes
Button -> onClick() -> Es wird das Warten-Popup geöffnet und per AJAX das PHP File angeworfen dass die Datei erzeugt. Soweit so gut. Wie mache ich jetzt aber weiter? Soll das PHP File dann den Filenamen der Datei an AJAX zurück schicken und ich mache dann einfach ein location.href auf die Datei? Das hat den Nachteil, dass ich die Datei dann als Leiche auf dem Server liegen habe, es sei denn ich schicke nach dem download nochmal ein php script ab das diese Datei löscht (Was ein gehampel). Ausserdem müßte ich die Datei dann auch noch vor unberechtigten Zugriffen schützen.
Oder sollte ich die Datei gar nicht im PHP erzeugen sondern nur die Daten der Datei zurück an AJAX schicken und das speichert dann die Datei irgendwohin. Dazu bräuchte ich dann aber sowas wie einen filerequester oder wie geht das?
Oder hat vielleicht jemand noch ganz andere Ideen? Vielleicht denke ich ja total falsch gerade.
Gruß
Claus
ich habe eine Webseite mit einem Button "Export". Wird dieser angeklickt, muss ein PHP Script aufgerufen werden, welches aus einer DB Daten holt und diese zu einer Datei zusammen bastelt. Wenn das erledigt ist, sollte die fertige Datei an den Client geschickt werden.
Für den User muss es also so aussehen:
Klick auf den Button -> Irgendein Popup öffnet sich in dem steht "Erstelle Datei..." -> Das Popup verschwindet und der Browser-Typische Requester zur Auswahl was man mit einer Downloaddatei anstellen will geht auf (oder auch gar nicht wie beim Safari, der es ja einfach direkt nach DownLoads speichert) und die Datei wird runtergeladen.
Ich mache im Moment folgendes
Button -> onClick() -> Es wird das Warten-Popup geöffnet und per AJAX das PHP File angeworfen dass die Datei erzeugt. Soweit so gut. Wie mache ich jetzt aber weiter? Soll das PHP File dann den Filenamen der Datei an AJAX zurück schicken und ich mache dann einfach ein location.href auf die Datei? Das hat den Nachteil, dass ich die Datei dann als Leiche auf dem Server liegen habe, es sei denn ich schicke nach dem download nochmal ein php script ab das diese Datei löscht (Was ein gehampel). Ausserdem müßte ich die Datei dann auch noch vor unberechtigten Zugriffen schützen.
Oder sollte ich die Datei gar nicht im PHP erzeugen sondern nur die Daten der Datei zurück an AJAX schicken und das speichert dann die Datei irgendwohin. Dazu bräuchte ich dann aber sowas wie einen filerequester oder wie geht das?
Oder hat vielleicht jemand noch ganz andere Ideen? Vielleicht denke ich ja total falsch gerade.
Gruß
Claus
2 Stunden Try & Error erspart 10 Minuten Handbuchlesen.
Pre-Kaffee-Posts sind mit Vorsicht zu geniessen
Pre-Kaffee-Posts sind mit Vorsicht zu geniessen