Florianfaw: input file => dateilink speichern ?

Hallo Forumgemeinde :)

ich möchte eine art "uploadfunktion" für Nutzer erstellen, die eigentlich gar keine sein soll. im groben habe ich auch schon den Fahrplan, aber der letzte rest fehlt noch :|

Es geht um folgendes:

Ich möchte dem Nutzer eine Upload Schaltfläche zur Verfügung stellen, sodass er Dokumente in einer art News Sektion bereit stellen kann. Alle Daten bzw Dateien die "hochgeladen" werden sollen liegen im internen netz. aus diesem grund soll auch kein wirklicher upload erfolgen, sondern nur der link des gewählten dokumentes gespeichert werden. über die w3school habe ich schon einmal folgenden Ansatz erhalten

Select a file to upload:
<input type="file" id="myFile" size="50">

<p>Click the button below do the display the file path of the file upload button above (you must select a file first).</p>

<button type="button" onclick="myFunction()">Try it</button>

<p id="demo"></p>

<script>
function myFunction() {
    var x = document.getElementById("myFile").value;
    document.getElementById("demo").innerHTML = x;
	
}
</script>

der Absatz <p id....> zeigt dann auch den internen dateipfad in der Website an. genau diesen pfad muss ich nun irgendwie einfangen und in ein weiteres Input Feld schreiben, welches dann wiederrum in der Datenbank abgelegt wird. alles rundherum funktioniert bereits. Aber der link muss eben noch manuell in das Input Feld kopiert werden, was nicht so sehr komfortabel ist.

Kann mich jemand aufklären? Wie kriege ich den wert aus id=demo in ein Input Feld geschrieben?

Dankeschön!

akzeptierte Antworten

  1. Hello,

    dann musst Du nur den enctype nicht auf "multipart/form-data" umstellen. Dann wird nur der Pfad zum File übertragen, aber das File selber nicht.

    Liebe Grüße
    Tom S.

    --
    Es gibt nichts Gutes, außer man tut es!
    Das Leben selbst ist der Sinn.
    1. Hallo Tom,

      danke für den hinweis. Und wie fange ich dann den link?! :(

      1. Hello,

        danke für den hinweis. Und wie fange ich dann den link?! :(

        Der wird doch trotzdem ans Backend (den Webserver) gesendet.

        Wenn Du keinen Webserver benutzen willst, sind HTTP/s und der Browser für Dich auch keine Lösung. Dann musst Du dir eine Desktop-Anwendung schreiben.

        Liebe Grüße
        Tom S.

        --
        Es gibt nichts Gutes, außer man tut es!
        Das Leben selbst ist der Sinn.
        1. ach die frage war einfach bescheuert. ich sitze hier schon ewig und alles qualmt und raucht, ein bisschen die schnauze voll hab ich auch schon :P

          Ich habs jetzt korrekt. Die Form anzulegen mit dem fehlenden enctype war tatsächlich einfach alles, was ich wollte. nun wird der Link direkt in die DB geschrieben, super fantastisch :)

          Vielen vielen Dank

          1. Hello,

            Ich habs jetzt korrekt. Die Form anzulegen mit dem fehlenden enctype war tatsächlich einfach alles, was ich wollte. nun wird der Link direkt in die DB geschrieben, super fantastisch :)

            WEnn Du PHP bentutzt, solltest Du zur Kontrolle auf dem Server den Fileupload überprüfen. Fand keiner Stastt, aber der Parameter wurde trotzdem übertragen, ist es der Pfad, sonst ist es nur der Dateiname den der Client vorgeschlagen hat.

            ... und ich freu mich immer über Punkte ;-)

            Liebe Grüße
            Tom S.

            --
            Es gibt nichts Gutes, außer man tut es!
            Das Leben selbst ist der Sinn.
          2. das ganze trallala mit dem JavaScript und variablen brauchte ich alles gar nicht. alles an code, was ich wirklich dafür brauchte war :

            <td><form method="post">
            	<input name="attachment" type="file" size="50"> 
                </form>
            </td>
            

            nun wird der Link direkt in die DB geschrieben, super fantastisch :)

            Vielen vielen Dank

  2. Mahlzeit;

    ich möchte eine art "uploadfunktion" für Nutzer erstellen, die eigentlich gar keine sein soll. im groben habe ich auch schon den Fahrplan, aber der letzte rest fehlt noch :|

    Der Fahrplan alleine reicht nicht. Man braucht auch eine Fahrkarte.

    Dein input type="file" liefert ein File-Objekt bzw. mehrere wenn multiple gesetzt ist. Jedes dieser Fileobjekte hat Eigenschaften und Methoden (siehe File API), mit denen kannst Du praktisch machen was Du möchtest.

    MfG

    --
    Wenn einer nur Bahnhof versteht, heißt das noch lange nicht, daß er den Fahrplan nicht lesen kann.
  3. Hallo @Florianfaw,

    Ich möchte dem Nutzer eine Upload Schaltfläche zur Verfügung stellen, sodass er Dokumente in einer art News Sektion bereit stellen kann. Alle Daten bzw Dateien, die "hochgeladen" werden sollen, liegen im internen netz. aus diesem grund soll auch kein wirklicher upload erfolgen, sondern nur der link des gewählten dokumentes gespeichert werden.

    warum liest du nicht den Netzwerkordner aus und stellst dem Nutzer die Auswahl zur Verfügung, á la

    Verzeichnisinhalt  -->  select options
    

    Viele Grüße
    Robert

    1. Hello,

      warum liest du nicht den Netzwerkordner aus und stellst dem Nutzer die Auswahl zur Verfügung, á la

      Verzeichnisinhalt  -->  select options
      

      Dann wäre das der Inhalt des Verzeichnisses mit den Rechten des Webswervers.
      Florian wollte (soweit ich das verstanden habe), die Dateien mit den Rechten des Clients auflisten lassen.

      Jedenfalls sind es zwei unterschiedliche Sichten!

      Liebe Grüße
      Tom S.

      --
      Es gibt nichts Gutes, außer man tut es!
      Das Leben selbst ist der Sinn.