upload: php uploaden

Hallo,

ich will eine Datei alle 2-3 sek auf den server hochladen bisher habe ich uploaden nur über ein formular gesehen ich will aber das eine bestimmte datei sich immer wieder aktualiesiert, ohne das der user eingreift. Geht das irgendwie?
Danke an alle kommenden Helfer!

  1. ich will eine Datei alle 2-3 sek auf den server hochladen

    Das klingt erst mal nach "nicht empfehlenswert" oder "verursacht nur Probleme". Teile uns bitte genaueres mit. Für derlei Späße gibt es Lösungen - nur haben die mit "hochladen" wenig bis nichts zu tun.

    Fange bei der Datei und dem Zweck an, gehe über die verwendeten Rechner bis hin zum Betriebssystem und eingesetzter Software.

    Jörg Reinholz

    1. ich will eine Datei alle 2-3 sek auf den server hochladen

      Das klingt erst mal nach "nicht empfehlenswert" oder "verursacht nur Probleme". Teile uns bitte genaueres mit. Für derlei Späße gibt es Lösungen - nur haben die mit "hochladen" wenig bis nichts zu tun.

      Fange bei der Datei und dem Zweck an, gehe über die verwendeten Rechner bis hin zum Betriebssystem und eingesetzter Software.

      Jörg Reinholz

      Also die Datei ist ein Bild auf dem man eigentlich nur erkennen muss ob bei Chrome die Konsole offen ist also nicht sehr gut, die verwendeten Rechner sind ein Win7 Laptop(2.7ghz) mit Xampp und dann bis zu 5 nicht so gute Rechner für den "Upload" mit Xp, genaueres zu den Rechnern weiß ich gerade nicht. Wenn dies geht könnte ich auch 2 Bilder und dann nur eine boolean variable übermitteln und eventuell wenn dies sagt das die Bilder unterschiedlich sind das Bild. Schon mal Danke!

      1. Om nah hoo pez nyeetz, upload!

        Beschreibe, was du erreichen willst, nicht deinen Lösungsansatz.

        Matthias

        --
        1/z ist kein Blatt Papier.

      2. Also die Datei ist ein Bild auf dem man eigentlich nur erkennen muss ob bei Chrome die Konsole offen ist also nicht sehr gut, die verwendeten Rechner sind ein Win7 Laptop(2.7ghz) mit Xampp und dann bis zu 5 nicht so gute Rechner für den "Upload" mit Xp, genaueres zu den Rechnern weiß ich gerade nicht. Wenn dies geht könnte ich auch 2 Bilder und dann nur eine boolean variable übermitteln und eventuell wenn dies sagt das die Bilder unterschiedlich sind das Bild. Schon mal Danke!

        Vergiss das.

        Allein der Aufwand zu beschreiben, warum es nicht (sinnvoll) geht, ist so groß, dass offenbar niemand Lust darauf hat, das (die Beschreibung) zu versuchen.

        Wenn es nur darum geht, herauszufinden ob die Konsole offen ist, dann habe ich einen Link.

        Das Abfeuern der Informationen gen Server geht dann beispielsweise mit einem XMLHttpRequest. Du bekommst so aber kein Bildschirmfoto - jedenfalls nicht ohne den Webbrowser neu zu programmieren, neu zu kompilieren und auf den Rechnern zu installieren. Das wäre dann ein Trojaner. Unter Umständen brauchst Du dann eine dummen Staatsanwalt und einen milden Richter.

        Grund: Javascript darf nicht auf Ressourcen des Betriebssystems zugreifen. Sonst wäre die Katastrophe groß. Microsoft hat mit Visial-Basic-Script (VBS) und irre komplizierten Freigaberegeln derlei im IE versucht und ist bitterböse auf die Fresse gefallen - das war einfach nicht "dicht" zu kriegen. Das bedeutet, ohne den Browser neu zu programmieren bekommst Du nur die Bildschirmfotos, wenn ein anderes Programm auf dem Rechner diese für dich schießt und zu Deinem "Server" (XAMP ist eine Testumgebung, als "Server" geht das bei mir nicht durch, gleich gar nicht auf einer netztechnisch kastrierten Win7-Möhre) überträgt.

        Frage an Dich: Wie willst Du denn 20 Bilder/Minute von 5 Rechnern (=100 Bilder/Minute) speichern und verwalten? Unter Windows? Das sind pro Minute 100x100kb=10 Megabyte, in einer Stunde also 600 MB. Nach 8 Stunden 480 Megabyte. Nach zwei Arbeitstagen ist das 1 Gigabyte in fast 100.000 Dateien!

        Wenn Du einzelne Rechner überwachen willst, dann installiere sowas wie VNC und lasse das auf den einzelnen Rechnern im Servermodus laufen, Dein "Server" ist dann der Client.

        UltraVNC (Freeware)
        TightVNC (Freeware)
        RealVNC (Freeware)

        oder nutze die Remotedesktopfreigabe von Windows. Auch die musst Du auf dem zu überwachenden Rechner als Serverdienst starten und kannst dann von einem Client (Deinem Server oder von auch immer) aus zugreifen.

        Ich hoffe zu dem, Du hast nicht etwa vor, dieses alles mit Rechnern vorzunehmen, die mittels DSL oder noch schlechter miteinander verbunden sind.

        Und noch was:

        Freilich könnte )nicht nur) ich sowas  programmieren und einrichten. Allerdings schon mal nicht ohne Zustimmung und Zutun der Eigentümer(!) und(!) Nutzer(!) der Computer. Aber der Aufwand wäre so groß, dass ich das nicht unbezahlt tun kann. Die Frage ist dann, ob Aufwand und Nutzen in einem adäquaten Verhältnis stehen. Und GENAU DAS kann ich nicht erkennen. Für mich ist das, was Du vor hast, eine "Schnapsidee". Ich weiß, dass das hart klingt - ich ringe aber um die rechten Worte um Dir das ohne Dich zu beleidigen auch wirklich klar zu machen.

        Jörg Reinholz

        1. Also die Datei ist ein Bild auf dem man eigentlich nur erkennen muss ob bei Chrome die Konsole offen ist also nicht sehr gut, die verwendeten Rechner sind ein Win7 Laptop(2.7ghz) mit Xampp und dann bis zu 5 nicht so gute Rechner für den "Upload" mit Xp, genaueres zu den Rechnern weiß ich gerade nicht. Wenn dies geht könnte ich auch 2 Bilder und dann nur eine boolean variable übermitteln und eventuell wenn dies sagt das die Bilder unterschiedlich sind das Bild. Schon mal Danke!

          Vergiss das.

          Allein der Aufwand zu beschreiben, warum es nicht (sinnvoll) geht, ist so groß, dass offenbar niemand Lust darauf hat, das (die Beschreibung) zu versuchen.

          Wenn es nur darum geht, herauszufinden ob die Konsole offen ist, dann habe ich einen Link.

          Das Abfeuern der Informationen gen Server geht dann beispielsweise mit einem XMLHttpRequest. Du bekommst so aber kein Bildschirmfoto - jedenfalls nicht ohne den Webbrowser neu zu programmieren, neu zu kompilieren und auf den Rechnern zu installieren. Das wäre dann ein Trojaner. Unter Umständen brauchst Du dann eine dummen Staatsanwalt und einen milden Richter.

          Grund: Javascript darf nicht auf Ressourcen des Betriebssystems zugreifen. Sonst wäre die Katastrophe groß. Microsoft hat mit Visial-Basic-Script (VBS) und irre komplizierten Freigaberegeln derlei im IE versucht und ist bitterböse auf die Fresse gefallen - das war einfach nicht "dicht" zu kriegen. Das bedeutet, ohne den Browser neu zu programmieren bekommst Du nur die Bildschirmfotos, wenn ein anderes Programm auf dem Rechner diese für dich schießt und zu Deinem "Server" (XAMP ist eine Testumgebung, als "Server" geht das bei mir nicht durch, gleich gar nicht auf einer netztechnisch kastrierten Win7-Möhre) überträgt.

          Frage an Dich: Wie willst Du denn 20 Bilder/Minute von 5 Rechnern (=100 Bilder/Minute) speichern und verwalten? Unter Windows? Das sind pro Minute 100x100kb=10 Megabyte, in einer Stunde also 600 MB. Nach 8 Stunden 480 Megabyte. Nach zwei Arbeitstagen ist das 1 Gigabyte in fast 100.000 Dateien!

          Wenn Du einzelne Rechner überwachen willst, dann installiere sowas wie VNC und lasse das auf den einzelnen Rechnern im Servermodus laufen, Dein "Server" ist dann der Client.

          UltraVNC (Freeware)
          TightVNC (Freeware)
          RealVNC (Freeware)

          oder nutze die Remotedesktopfreigabe von Windows. Auch die musst Du auf dem zu überwachenden Rechner als Serverdienst starten und kannst dann von einem Client (Deinem Server oder von auch immer) aus zugreifen.

          Ich hoffe zu dem, Du hast nicht etwa vor, dieses alles mit Rechnern vorzunehmen, die mittels DSL oder noch schlechter miteinander verbunden sind.

          Und noch was:

          Freilich könnte )nicht nur) ich sowas  programmieren und einrichten. Allerdings schon mal nicht ohne Zustimmung und Zutun der Eigentümer(!) und(!) Nutzer(!) der Computer. Aber der Aufwand wäre so groß, dass ich das nicht unbezahlt tun kann. Die Frage ist dann, ob Aufwand und Nutzen in einem adäquaten Verhältnis stehen. Und GENAU DAS kann ich nicht erkennen. Für mich ist das, was Du vor hast, eine "Schnapsidee". Ich weiß, dass das hart klingt - ich ringe aber um die rechten Worte um Dir das ohne Dich zu beleidigen auch wirklich klar zu machen.

          Jörg Reinholz

          Ok ich hab es jetzt verstanden das geht so nicht, hätte ich auch selber mal ausrechnen können naja später ist man immer schlauer, aber der link mit der Konsole reicht glaube ich schon. Dann hätte ich nur noch eine Frage: Kann man JS Variablen während der Laufzeit noch auf andere Weise verändern als mit der Konsole?
          Dein "Angebot" schlage ich einfach mal aus da sich das für ein 3-tägiges Schulprojekt nicht lohnt.
          Danke das du mich darauf aufmerksam gemacht hast!

          1. Kann man JS Variablen während der Laufzeit noch auf andere Weise verändern als mit der Konsole?

            Ja. Die allgemeine Aussage lautet: mit Java-Script.

            Dein "Angebot" schlage ich einfach mal aus da sich das für ein 3-tägiges Schulprojekt nicht lohnt.

            Mann!

            Dafür gibt es z.B. Adobe Connect Hilfeseiten.

            Deshalb solltest Du schreiben, was Du vor hast.

            Jörg Reinholz

  2. Tach,

    ich will eine Datei alle 2-3 sek auf den server hochladen

    von wo hochladen? Was ist das für "ein Server"? Ein Webserver? Welches Protokoll? FTP? SSH? Some more informations please.

  3. Hello,

    ich will eine Datei alle 2-3 sek auf den server hochladen

    Da sollten wir erst einmal mehrere Begriffe Klären:

    1. was ist ein Server?
    2. was ist ein Client?
    3. was ist "uploaden"?
    4. was ist "downloaden"?
    5. welche Kombination ist die beste?
       Datei fetchen (also "downloaden" = GET)
       oder pushen (also "uploaden" = POST oder PUT)

    Mit einem Get fährt man im HTTP-Protokoll meistens billiger, was den Ressourcenverbrauch betrifft. Da muss man nur einen HEAD-Request absetzen und nur, wenn die Daten tatsächlich neu sind, einen GET-Request hinterher schicken. Mit ein paar Request-Parametern kann man das sogar in einem Request kombinieren.

    Ja, und auch ein "Server" kann mal für ein paar Millisekunden den Client spielen.

    Also erstmal darüber diskutieren und sortieren und dann weiterplanen :-)

    bisher habe ich uploaden nur über ein formular gesehen ich will aber das eine bestimmte datei sich immer wieder aktualiesiert, ohne das der user eingreift. Geht das irgendwie?

    Liebe Grüße aus dem schönen Oberharz

    Tom vom Berg

    --
     ☻_
    /▌
    / \ Nur selber lernen macht schlau
    http://restaurant-zur-kleinen-kapelle.de
    1. Moin,

      Mit einem Get fährt man im HTTP-Protokoll meistens billiger, was den Ressourcenverbrauch betrifft. Da muss man nur einen HEAD-Request absetzen und nur, wenn die Daten tatsächlich neu sind, einen GET-Request hinterher schicken. Mit ein paar Request-Parametern kann man das sogar in einem Request kombinieren.

      richtig, man nennt das dann auch gern einen "Conditional Request".
      Im HTTP-Request den Header If-Modified-Since mit dem Zeitstempel mitsenden, mit dem man die Ressource zuletzt erhalten hat. Der Server antwortet dann entweder mit 304, dann gibt's nichts Neues, oder normal mit 200 und schickt die neuen Daten im Response Body hinterher.

      Ja, und auch ein "Server" kann mal für ein paar Millisekunden den Client spielen.

      ACK. Die Rollenverteilung ist sowieso immer kontextabhängig.

      Ciao,
       Martin

      --
      Irgendwann in grauer Vorzeit benutzte einer unserer prähistorischen Vorfahren ein Schimpfwort anstelle der Keule.
      Die Zivilisation hatte begonnen.
      Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(