Goalgettah: Upload einer vorbestimmten Datei

Tach wohl!

Ich möchte eine Datei von einem User auf den Webserver hochladen und erledige dies mit dem üblichen Upload-Formular:

<FORM ENCTYPE="multipart/form-data" ACTION="upload.php" METHOD="POST">
<input type="file" name="file">
<input type="submit" value="Datei senden">
</form>

Das Upload-Script ist Teil einer Web-Anwendung und wird stets vom selben User mehrmals täglich benützt. Daher wäre es praktischer, wenn der User nicht jedesmal die Datei über den Button "Durchsuchen" auf seinem Computer suchen müsste, sondern wenn das Script den Pfad speichern würde und der User mit einem Mausklick die Datei hochladen könnte.
Leider funktioniert value bei diesem Formularfeld nicht: "Das Attribut value= in Verbindung mit <input type="file">, mit dem das Vorbelegen der Dateiauswahl möglich wäre, wird von moderneren Browsern aus Sicherheitsgründen nicht mehr unterstützt." (http://de.selfhtml.org/html/formulare/datei_upload.htm#definieren)

Gibt es sonst Möglichkeiten, einen Pfad der Datei, die hochgeladen werden soll, anzugeben? Kann man die Datei auf eine andere Weise hochladen und dann den Pfad im Script festlegen?

Thanks for the help!

Greets

Goalgettah

  1. Hallo!

    Ich möchte eine Datei von einem User auf den Webserver hochladen und erledige dies mit dem üblichen Upload-Formular:

    <FORM ENCTYPE="multipart/form-data" ACTION="upload.php" METHOD="POST">
    <input type="file" name="file">
    <input type="submit" value="Datei senden">
    </form>

    Das Upload-Script ist Teil einer Web-Anwendung und wird stets vom selben User mehrmals täglich benützt.

    So dieser eine User nur einen Browser verwendet, welchen verwendet er denn?

    Beste Grüße
    Viennamade

    1. Hi Viennamade

      Das Upload-Script ist Teil einer Web-Anwendung und wird stets vom selben User mehrmals täglich benützt.

      So dieser eine User nur einen Browser verwendet, welchen verwendet er denn?

      Spielt das eine Rolle? Es liesse sich anpassen. Im Moment verwendet er IE 6.

      Greets

      Goalgettah

      1. Hi Viennamade

        So dieser eine User nur einen Browser verwendet, welchen verwendet er denn?

        Spielt das eine Rolle? Es liesse sich anpassen. Im Moment verwendet er IE 6.

        Naja, der merkt sich doch zumindest das Verzeichnis welches zuletzt für "Datei auswählen" verwendet wurde.
        Aber eigentlich dachte ich an die "Auto-Vervollständigen"-Funktion für Formular. Also könnte im Formular schon der Name drinnen stehen. Wie es weiter gehen könnte weiß ich nicht.

        Beste Grüße
        Viennamade

        1. Spielt das eine Rolle? Es liesse sich anpassen. Im Moment verwendet er IE 6.
          Naja, der merkt sich doch zumindest das Verzeichnis welches zuletzt für "Datei auswählen" verwendet wurde.

          Ja, das stimmt. Aber wenn der User unterdessen etwas anderes hochgeladen oder runtergeladen hat, ist wieder ein anderes Verzeichnis angegeben und der User muss seine Datei wieder suchen...

          Aber eigentlich dachte ich an die "Auto-Vervollständigen"-Funktion für Formular. Also könnte im Formular schon der Name drinnen stehen.

          Das habe ich nicht ausprobiert, wäre vielleicht ne möglichkeit. Wie und wo stellt man die "Auto-Vervollständigen"-Funktion  schon wieder ein?

          Danke

          Goalgettah

          1. Hallo!

            ... "Auto-Vervollständigen"-Funktion für Formular. Also könnte im Formular schon der Name drinnen stehen.

            Wie und wo stellt man die "Auto-Vervollständigen"-Funktion  schon wieder ein?

            Extras - Internetoptionen - Inhalte - Autovervollständigen - Formulare.

            Beste Grüße
            Viennamade

            1. Hi

              Wie und wo stellt man die "Auto-Vervollständigen"-Funktion  schon wieder ein?

              Extras - Internetoptionen - Inhalte - Autovervollständigen - Formulare.

              Einstellung habe ich gemacht, aber funktioniert irgendwie nicht so ganz...

              Grüsse
              Goalgettah

              1. Hallo!

                Wie und wo stellt man die "Auto-Vervollständigen"-Funktion  schon wieder ein?

                Extras - Internetoptionen - Inhalte - Autovervollständigen - Formulare.

                Einstellung habe ich gemacht, aber funktioniert irgendwie nicht so ganz...

                Mh. Es sollte so funktionieren: Formular ausfüllen und nach dem Absenden wirst Du gefragt ob "er" - der IE eben - sich die Formulareinträge merken soll. Bei "Ja" sollte der Browser beim nächsten Aufruf das Formular automatisch ausfüllen.
                Hast Du das so probiert? Ist Dein Quelltext valide? Vielleicht braucht das Formular einen Namen?

                Beste Grüße
                Viennamade

                1. Morgen Viennamade

                  Danke für deine Tipps.

                  Wie und wo stellt man die "Auto-Vervollständigen"-Funktion  schon wieder ein?

                  Extras - Internetoptionen - Inhalte - Autovervollständigen - Formulare.

                  Einstellung habe ich gemacht, aber funktioniert irgendwie nicht so ganz...

                  Mh. Es sollte so funktionieren: Formular ausfüllen und nach dem Absenden wirst Du gefragt ob "er" - der IE eben - sich die Formulareinträge merken soll. Bei "Ja" sollte der Browser beim nächsten Aufruf das Formular automatisch ausfüllen.
                  Hast Du das so probiert? Ist Dein Quelltext valide? Vielleicht braucht das Formular einen Namen?

                  Yep, der Quellcode ist valid. Dem Formular habe ich jetzt einen Namen geschenkt, doch auch dies nützt leider nichts. Der Autovervollständiger funktioniert übrigens auch bei anderen Formularen, die ich getestet habe, nicht.

                  Muss denn der Upload zwingend mit einem Formular geschehen? Gibt's nicht noch andere Möglichkeiten, mit PHP eine Datei hochzuladen?

                  Danke

                  Greets
                  Goalgettah

                  1. Hi,

                    Muss denn der Upload zwingend mit einem Formular geschehen? Gibt's nicht noch andere Möglichkeiten, mit PHP eine Datei hochzuladen?

                    PHP läuft serverseitig. Es muß aber clientseitig die Datei ausgewählt werden.

                    Es scheint ja nur um einen einzigen User zu gehen.

                    Da wäre es doch durchaus möglich, daß bei diesem einen User eine Software installiert wird.

                    z.B. ein DOS-Batch-File, das z.B. einen FTP-Upload anstößt (setzt halt einen FTP-Server voraus, aber das sollte ja nicht unbedingt ein Hindernis darstellen).

                    cu,
                    Andreas

                    --
                    MudGuard? Siehe http://www.Mud-Guard.de/
                    Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
                    1. Hallo Andreas

                      Muss denn der Upload zwingend mit einem Formular geschehen? Gibt's nicht noch andere Möglichkeiten, mit PHP eine Datei hochzuladen?

                      PHP läuft serverseitig. Es muß aber clientseitig die Datei ausgewählt werden.

                      Es scheint ja nur um einen einzigen User zu gehen.

                      Da wäre es doch durchaus möglich, daß bei diesem einen User eine Software installiert wird.

                      z.B. ein DOS-Batch-File, das z.B. einen FTP-Upload anstößt (setzt halt einen FTP-Server voraus, aber das sollte ja nicht unbedingt ein Hindernis darstellen).

                      Wie soll dann  der FTP-Upload vollzogen werden?

                      Momentan handelt es sich wirklich nur um einen User und daher vollzog ich den Upload bis anhin mit den Ftp-Funktionen von PHP. Der User musste aber PHP und einen Webserver installiert haben, da das Upload-Script bei ihm, also beim Client, lief.
                      Es wird nun aber mehrere User geben, die jeweils einen eigenen Account haben. Da PHP (und der Webserver) für einen Laie nicht immer ganz einfach zu installieren ist (oder beweist mir bitte das Gegenteil...),  suche ich nach einer Uploadmöglichkeit, die keine Installation vom User voraussetzt. Dies soll aber nicht auf Kosten des Komforts geschehen. Der User soll die Datei mit einem einzigen Mausklick hochladen können.

                      Thanks!

                      Greets
                      Goalgettah

                      1. Hallo!

                        Es scheint ja nur um einen einzigen User zu gehen.

                        Da wäre es doch durchaus möglich, daß bei diesem einen User eine Software installiert wird.

                        z.B. ein DOS-Batch-File, das z.B. einen FTP-Upload anstößt (setzt halt einen FTP-Server voraus, aber das sollte ja nicht unbedingt ein Hindernis darstellen).

                        Wie soll dann  der FTP-Upload vollzogen werden?

                        Es wird nun aber mehrere User geben, die jeweils einen eigenen Account haben. Da PHP (und der Webserver) für einen Laie nicht immer ganz einfach zu installieren ist (oder beweist mir bitte das Gegenteil...),  suche ich nach einer Uploadmöglichkeit, die keine Installation vom User voraussetzt. Dies soll aber nicht auf Kosten des Komforts geschehen. Der User soll die Datei mit einem einzigen Mausklick hochladen können.

                        Also aus diesem Posting von Dir werde ich nicht schlau. Ist es nicht so: 1 Server (wo die Dateien upgeloadet werden) und mehrere Clients. Dann ist doch nicht die Installation von PHP durch diese Anwender notwendig?!

                        Wie Andreas schrieb, kann man mit 1 bis 2 kleinen DOS-Scripts einen FTP-Upload automatisieren. Ein Nachteil dabei ist, daß das Passwort des Users am PC, eben in diesem Script im Klartext drinnen steht.
                        Wie man solche Scripts erstellt kannst Du zB. hier anschauen http://support.microsoft.com/?kbid=96269.

                        Beste Grüße
                        Viennamade

                        1. Hi

                          Also aus diesem Posting von Dir werde ich nicht schlau. Ist es nicht so: 1 Server (wo die Dateien upgeloadet werden) und mehrere Clients.

                          Ja. So war es bis anhin. Dieses System wurde nun aber sozusagen "geklont". Daher gibt es nun neu mehrere Personen, welche Dateien hochladen (aber jeder eine andere Datei). (Die "geklonten Systeme" haben also nichts miteinander zu tun). Bei jedem System gibts _ein_ User (man kann ihn auch Admin nennen), der die Datei hochlädt. Bei jedem System müsste folglich beim Admin Software installiert werden, auser man fände eine Lösung die auf dem zentralen Server läuft.

                          Wie Andreas schrieb, kann man mit 1 bis 2 kleinen DOS-Scripts einen FTP-Upload automatisieren. Ein Nachteil dabei ist, daß das Passwort des Users am PC, eben in diesem Script im Klartext drinnen steht.

                          Ja eben. Ein weiterer Nachteil.

                          Wie man solche Scripts erstellt kannst Du zB. hier anschauen http://support.microsoft.com/?kbid=96269.

                          Danke

                          Greets
                          Goalgettah

  2. Du könntest dem Benutzer noch ein weiters Input-Text-Feld anbieten, in dem der Default-Wert steht. Diesen kann er dann markieren und kopieren, bzw. per Drag & Drop rüberziehen. Ist zwar nicht die Lösung die du dir erhofft hast, aber ...

    Grüsse, Lucien

    1. Ciao Lucien

      Du könntest dem Benutzer noch ein weiters Input-Text-Feld anbieten, in dem der Default-Wert steht. Diesen kann er dann markieren und kopieren, bzw. per Drag & Drop rüberziehen. Ist zwar nicht die Lösung die du dir erhofft hast, aber ...

      ist ne möglichkeit. aber eher eine notlösung.
      trotzdem danke.

      Greets Goalgettah