Frank Erdmann: Multipler Dateiupload mit nur einem "Durchsuchen-Feld" möglich?

Hallo!

Für ein Projektseminar schreiben wir ein Web-Reportingtool, das auf verschiedenen Seiten einen gleichzeitigen Upload mehrerer Dateien zulassen soll.
"input type=file" lässt ja nur eine Datei zu und wir wollen nicht pauschal x Durchsuchen-Felder in die Seite einbauen, sondern am besten ein großes Feld haben, in das man (beliebig) viele Dateien Eintragen kann. Die Option multiple hilft ja leider bei dem Formularelement "input type=file" nicht.
Zum Auswerten des dann erzeugten Datei-Arrays benutzen wir PHP.
Gibt es evtl. eine Javascript-Lösung, die jemanden bekannt ist?

MfG

Frank

  1. Hi,

    Gibt es evtl. eine Javascript-Lösung, die jemanden bekannt ist?

    es gibt _keine_ Lösung, schon gar nicht mit JavaScript. Einige Netscape-Versionen erlauben den Upload von ganzen Verzeichnissen, wobei zweifelhaft ist, ob diese Daten dann serverseitig auch ausgewertet werden können. CGI.pm (Perl) beispielsweise kann es nicht.

    Cheatah

    1. Hi zusammen,

      Gibt es evtl. eine Javascript-Lösung, die jemanden bekannt ist?

      es gibt _keine_ Lösung, schon gar nicht mit JavaScript...

      Vielleicht geht es so: mehrere Inputs vom type=file, die aber per Layer außerhalb des sichtbaren Bereichs der Seite sind (z.B. 0,-1000). Ein einziges file-input läßt man normal sichtbar, und überträgt dann per JS immer den Inhalt (per onselect oder so, hier muss noch viel überlegt und gecodet werden) in die anderen Inputs (den value, oder was immer da die entsprechende Eigenschaft ist). Man müsste übrigens z.B. noch aufpassen, vor dem Abschicken den Inhalt aus dem sichtbaren Input zu löschen, da diese Datei sonst 2x hochgeladen wird.

      Ist nur ein grober Denkansatz, keine Ahnung, ob das so ginge...

      Mirko

      1. Hello again,

        Gibt es evtl. eine Javascript-Lösung, die jemanden bekannt ist?

        es gibt _keine_ Lösung, schon gar nicht mit JavaScript...

        Vielleicht geht es so: mehrere Inputs vom type=file, die aber per Layer außerhalb des sichtbaren Bereichs der Seite sind (z.B. 0,-1000). Ein einziges file-input läßt man normal sichtbar, und überträgt dann per JS immer den Inhalt (per onselect oder so, hier muss noch viel überlegt und gecodet werden) in die anderen Inputs (den value, oder was immer da die entsprechende Eigenschaft ist). Man müsste übrigens z.B. noch aufpassen, vor dem Abschicken den Inhalt aus dem sichtbaren Input zu löschen, da diese Datei sonst 2x hochgeladen wird.

        Ist nur ein grober Denkansatz, keine Ahnung, ob das so ginge...

        Ok, also...

        Man kann den value eines form-elements vom type=file zwar auslesen, aber nicht setzen (weder IE noch NN), das wäre ja auch ziemlich gefährlich. Auch das Zuweisen eines kompletten element-Objektes (  document.forms['files'].file1 = document.forms['files'].file0) funktioniert nicht.
         ruft
        Aber: Im IE (zumindest 4.0) ruft <a href="javascript:document.forms['files'].file0.click()">fakeclick</a> den gleichen Effekt wie ein Klick auf den Durchsuchen-Button hervor.

        Abgesehen davon, dass das bei dieser Multifileuploadgeschichte hilft, kann man so den hässlichen Button auch verstecken (indem man alles sonstige so macht wie im vorigen Posting von mir beschrieben (s.o)).

        Das ganzw würde dann aber nur im IE funzen... naja :[... ich probiere noch ein bischen weiter und poste dann wahrscheinlich nochmal.

        Mirko