Startliste auf Server hochladen



  • Hallo,

    Ich entwickle derzeit eine Zeitmessung für Sportveranstaltungen mit einem Raspi, hauptsächlich für Speedklettern. Auf dem Raspi läuft ein kleiner aber feiner selbstprogrammierter C Webserver (ist nicht von mir) und die Steuerung soll über eine Homepage funktionieren, damit es möglichst unkompliziert zu bedienen ist und niemand was falsch machen/zerstören kann.

    Dazu möchte ich nun eine Startliste (.csv Format) hochladen und die darin enthaltenen Namen in eine Struktur einpflegen um sie dann entsprechend der Reihenfolge auszugeben und die gemessenen Zeiten darin zu speichern.
    Habe das bis jetzt mit der GET Methode versucht, nur ist da in meinem HTTP Telegram sehr schwer festzustellen wo die Liste beginnt und endet.
    Es tauchen zwar immer lange Zahlenfolgen vor und nach den daten auf, diese sind jedoch immer anders und ich konnte nicht herausfinden wo sie herkommen?

    Oder ist die Get Methode hier überhaupt nicht brauchbar und POST das mass aller Dinge?

    lg
    reinmanu


  • Mod

    Jep, du brauchst POST.

    Ich gehe mal von normalen CGI aus, da dass in so einer Situation die gängige Technik ist. Dann kannst du in deinem CGI Programm den Inhalt der Datei per Stdin lesen. Achte aber auf den enctype bzw. generell das encoding.

    Siehe:
    http://stackoverflow.com/questions/4526273/what-does-enctype-multipart-form-data-mean
    und
    http://stackoverflow.com/questions/17815067/how-can-i-read-a-file-sent-by-post-in-c-cgi

    PS:
    was einfacher ist als Datei upload wäre ein riesen textarea feld, wo man den Inhalt der Datei reinkopiert. Das spart arbeit auf der Serverseite, ist aber natürlich komplizierter für den User.

    PPS:
    was ich oft gesehen habe in ähnlichen Situationen war auch ein USB Stick den man angesteckt hat mit einer Datei oben - und der microkontroller hat sich die Datei selbst geholt und ausgelesen.



  • Shade Of Mine schrieb:

    PS:
    was einfacher ist als Datei upload wäre ein riesen textarea feld, wo man den Inhalt der Datei reinkopiert. Das spart arbeit auf der Serverseite, ist aber natürlich komplizierter für den User.

    PPS:
    was ich oft gesehen habe in ähnlichen Situationen war auch ein USB Stick den man angesteckt hat mit einer Datei oben - und der microkontroller hat sich die Datei selbst geholt und ausgelesen.

    Das mit dem USB Stick währe eigentlich eine super Idee, ist mir aber von der Bedienung glaub ich ein bisschen zu heikel. Da wirds dann meistens alles nicht so genau genommen (Namen, Ordnerstruktur, ...) und nichts geht

    Was mir gerade eingefallen ist währe natürlich die Umsetzung von 2 Varianten:

    • Datei von USB Stick einlesen
    • Wenn das nicht funktioniert jeden Namen über ein Textfeld einzeln eingeben, wobei diese Lösung wahrscheinlich überhaupt nicht die schlechteste währe, denn da kann man nichts falsch machen...

    Aber wenn ich das mit POST mache habe ich die Datei 1:1 auf dem Server oder?

    Tut mir leid bin nicht so der HTML und Web Profi, es reicht gerade für ein paar Buttons und ist für mich hier nur ein Mittel zum Zweck 🙄 :p

    lg und vielen Dank

    reinmanu


  • Mod

    reinmanu schrieb:

    Aber wenn ich das mit POST mache habe ich die Datei 1:1 auf dem Server oder?

    Ja. Du musst aber wie gesagt auf das Encoding aufpassen.


Log in to reply