klaus: Datei upload mit perl

Beitrag lesen

hallo,

kann mir jemand sagen wie ich mit perl dateien uploaden lassen
»»kann in ein bestimmtes verzeichnis ? mit oder ihne cgi.pm.

ich glaubs nicht, ich wollte dieselbe frage stellen !!!!
Naja, ich wollte mehr wissen ob es vielleicht möglich ist dateien direkt zu verschicken (an einen anderen computer), auf welche art und weise auch immer.

Ich bin mir nicht ganz sicher, aber wenn du nur zu deinem server uplaoden willst, mach doch einfach ein formular mit so einem browse-feld. Dann kriegst du den dateinammen, und kannst die datei lesen und einfach auf den server schreiben...

hallo ihr da,
erstmal
<../../tchg.htm>
lesen.

im eingabefeld steht, dann nach dem der Benutzer eine _lokale_ Datei ausgewählt hat der dateiname.
beim ansenden des formulares überträgt der Browser den gesamten Inhalt der Datei dem CGI-Script.
mit CGI.pm kann dieser Inhalt perl
$query->param('name_des_dateibuttons')
abgefragt werden.
verwendest Du cgi-lib.pl, dann steht der inhalt nach 'ReadParse(*input);' im entsprechenden EIntrag vom Hash '%input', also z.B.: '$input{'name_des_dateibuttons'}'.
Die Datei kann dann ohne weiteres in eine x-beliebige Datei des Servers geschrieben werden:
if(open(OUT,">$lokaler_dateiname"))
   {
   binmode(OUT); # unter Win32 empfiehlt sich dieser funktionsaufruf, wenn die Datei sicher 1:1 zur Originaldatei sein soll.
   print OUT,$query->param('name_des_dateibuttons'); # mit CGI.pm
   print OUT,$input{'name_des_dateibuttons'};              # mit cgi-lib.pl
   close OUT;
   }

ach ja, der Dateiname der Originaldatei ist meines wissens nach bei 'CGI.pm' nicht abrufbar (war es zumindestens nicht, als ich mir das Modul damals reingezogen hat, ob es in einer neueren Version schon möglich ist, weiß ich nicht) .
mit 'cgi-lib.pl' kannst Du Dir den Dateinamen aus dem Array '@input' holen, weil 'ReadParse()' alles was nicht inst Hash kommt, ins Array schreibt. ist aber nicht ganz einfach, aber auch nicht soooo schwer.
habs schon mal gemacht, bin aber momentan zu faul, um es rauszusuchen. analysiere das Array und Du wirst schon selber draufkommen, wie es funktioniert.

viel spaß noch
klaus