phpbar.de logo

Mailinglisten-Archive

[php] BIBTEX Datei erzeugen

[php] BIBTEX Datei erzeugen

Niels Jäckel niels.jaeckel at silice.de
Sam Dez 16 16:51:30 CET 2006


Hallo Jan,

> ich möchte mit php eine Bibtex-Datei erzeugen. Dazu sollen Daten aus 
> einer MySQL-Datenbank in eine temporäre Datei geschrieben werden. Diese 
> soll an den Browser zum Download geschickt werden. Danach soll die Datei 
> wieder gelöscht werden.
> 
> Wie genau funktioniert sowas?

Ich gebe dir mal den (allgemeinen) groben Ablauf - ohne auf etwaige (mir 
nicht bekannte) Tücken mit Bibtex-Files einzugehen:

   - Du erzeugst die Datei sicher on-the-fly. D.h. diese Datei liegt zu
     keinem Zeitpunkt im Dateisystem des Servers - muss also am Ende
     auch nicht gelöscht werden.
   - Es sei denn du hast viele Zugriffe, dann wäre ein Caching und damit
     die Ablage im Dateisystem wieder sinnvoll.

   1. Abfrage der Datenbank
   2. Zusammenbauen der Datei in EINEN String.
      (sicherlich mit foreach(...) über allen Datensätzen)

   3. Korrekte Headers an den Client senden
      header('Content-Type: x-application/x-octet-stream');
      header('Content-Disposition: attachment; filename="datei.bib"');
      header('Content-Transfer-Encoding: binary');
      header('Content-Length: '. strlen($content));

   4. Content senden
      (echo $content)



Grüße,
Niels

php::bar PHP Wiki   -   Listenarchive