Andreas Bierhals: Projekt pdf File-Upload

Beitrag lesen

Moin,

Fragen:

  1. Hat jemand ein ähnliches Vorhaben bereits realisiert? Ist es eine arg schwierige Angelegenheit, oder liegts im Rahmen des allgemein Machbaren? (Erfahrung?) Lohnt siche der (Programmier-) Aufwand überhaupt, oder ist ein "manuelles" uploaden und HTML-Seiten anpassen auch auf längere Sicht wirtschaftlicher?

ich hab bisher nur Ascii-Dateien geuploadet und das mit einer Routine in C. Normalerweise ist ein Fileupload aber eine Standardaufgabe, die imho in den gängigen Perl-Libraries (cgi.pm ...) schon implementiert ist. Das Komplizierte daran wird eher das mit der Zusammenwirkung Deines Magazins und dem upload-cgi.

  1. Wenn ich mit ftp ein File uploade, muss ich immer via username und passwort einloggen. In dem Script von Brent Michalski (Wurde im Forum mehrmals gepostet) kann ich nirgends sehen, dass da ein Login gemacht werden muss. Entfällt das mit einem CGI Script?

Das cgi-skript läuft bei vielen Servern (z.B. Apache/Linux) unter einem eigenen Benutzernamen, z.B. 'nobody' und kann daher auf alle Verzeichnisse zugreifen, auf die auch 'nobody' entsprechenden Zugriff hat. Eine Passwortabfrage müßtest Du entweder selbst implementieren oder das Verzeichnis mit den cgi-Skripten z.B. via .htaccess absichern (soll ja nicht jeder an dem Magazin rumwurschteln dürfen). Genaugenommen müßtest Du Dir auch überlegen, was passieren soll, wenn z.B. aus irgendwelchen zufälligen Gründen 2 Files gleichzeitig ans cgi gesendet werden.

  1. In den Beispielen ist immer die Rede von Bild- oder Textdateien. Ich gehe davon aus, dass pdf Dateien genau so einfach upzuloaden sind?

Im Prinzip schon, der mime-Typ müßte application/pdf sein. Im HTML-Dokument also etwa:

<form method="post" action="<cgi-url>" enctype="multipart/form-data">
  <!--...blabla...-->
  <input type="file" accept="application/pdf" name="pdffile">
  <input type="submit" value="ab geht's">
  </form>

Du mußt aufpassen, daß die pdf-Dateien nicht als ascii sondern als binaries versendet werden. Sie enthalten nämlich zwecks schneller Auffindbarkeit am Datei-Ende eine Tabelle mit den Byte-Offsets zu den einzelnen eingebetteten Objekten, und wenn z.B. im Ascii-Modus die Zeilenumbrüche manipuliert werden (von unix- auf dos-style...), dann passt die Tabelle hinterher nicht mehr.

  1. Gibts noch weitere Perl-Scipt Archive mit freien Upload Scripts?

Hab momentan leider gerade keinen Überblick...

Viele Grüße

Andreas