Formularfeld mit Button -> Rückgabewert

  • Hallo zusammen,


    ich bin der Neue! ;)

    Zu mir: Ich habe bereits einige (viele) firmeninterne PHP-Skripts erstellt, die nicht viel "Schnick-Schnack" haben und in der Regel Datenbanken Abfragen und die Ergebnisse mehr oder weniger schön darstellen.

    Nun bin ich an einer Sache, wo auch die Optik und Funktionalität zählt, daher habe ich mich in CSS und DIV eingearbeitet und auch ein passables Ergebnis erzielt. Probleme habe ich mit der Funktionalität

    Ganz grob:

    Dargestellt wird eine Seite mit drei DIVs

    - im ersten DIV ist ein Formularfeld und ein Submit-Button

    - das zweite DIV ist leer

    - das dritte DIV stellt eine Karte mir Leaflet dar

    Ablauf soll folgender sein: in Das Formularfeld wird ein Wert eingegeben und per Submit-Button versendet. Dazu wird ein PHP-Script aufgerufen, welches Werte ermittelt. Das PHP-Script funktioniert und liefert auch die gewünschten Daten, wenn ich es alleine laufen lasse.

    Erste konkrete Frage: Wie bekomme ich die ermittelten Werte wieder in die aufrufende Seite? Mit diesen Werten soll bsp, dieKarte positioniert werden und das zweite leere DIV gefüllt werden.


    Schön wäre auch, wenn nach dem Submit im zweiten DIV erscheint: "Anfrage für Meier läuft..." das das ein paar Sekunden dauert, bis da etwas zurückkommt.
    bei Rückgabe des Ergebnisses soll dann einfach zugefügt werden (Bspw):


    Ergebnis für Meier um 12:21:16 | Lat: 45.16000 Lon: 6.32544


    also einfach Zeilen dazuschreiben, quasi wie ein Ticker, da die Daten mehrfach abgefragt werden, sollte auch nach jedem neuen Ergebnis eine Aktualisierung erfolgen.

    Wenn ich weiß, wie ich an die Daten komme ist der Rest kein größeres Problem.


    Vielleicht hat mir jemand einen Tipp!


    Danke

    Michael

  • Hey,


    zuerst mal solltest du die HTML 5 Grundlagen lernen. Nur Divs zu benutzen ist syntaktisch nicht korrekt.


    Du kannst einfach ein Formular erstellen, ohne action, und dann überprüfen ob der Submit-Button geklickt wurde .

    Wenn ja -> Abfrage des Inputs und Ausgabe "Anfrage für ... läuft" , dies kannst du dann mit Javascript wieder ausblenden und dann einfach mit Javascript das Ergebnis einblenden.


    Grüße,

    Stef

  • Hallo,


    Die Daten werden per cURL-Abfrage von einem Server abgeholt.

    Die Anfrage an den Server wird in Abstand von 10 oder 15 Senden dreimal wiederholt. Sobald aber das erste Ergebnis vorliegt, soll das angezeigt werden, wenn die beiden weiteren nach 10-15 Sekunden eintreffen ebenfalls. Zurückgegeben werden jeweils ein Json-String mit 15 Werten. Von diesen 15 Werten werden etwa 10 benötigt und weiter verarbeitet.


    Gruß

    Michael

    PS:

    Hey,


    zuerst mal solltest du die HTML 5 Grundlagen lernen. Nur Divs zu benutzen ist syntaktisch nicht korrekt.

    Waaas? die ganze HTML-Welt schreit nach DIV? ;) - wie würdes Du denn so etwas lösen?

  • Hast du das Wort div-suppe schon gehöhrt ?

    Ja klar, allerdings finde ich das bei mir jetzt nich sooo dramatisch.
    Ich hab einenTitelbereich mit dem Formiularfeld und dem Submit-Buton in voller Breite, darunter den Ausgabebereich der Daten links als DIV und die Karte in einem DIV daneben.

    Grüße
    Michael

  • DIV-Suppe erhält man bei übermäßigem Gebrauch davon. Die meisten meiner Projekte basieren auch auch DIV, weil die HTML5-Elemente, die ihr ansprecht in den Browsern z.T. unterschiedliche Darstellungen haben. Ich habe weniger Anpassungeaufwand bei meinen Projekten, wenn ich auf DIV baue.


    Syntaktisch falsch würde ich auch nicht sagen, es sind Container-Elemente, die als Container genutzt werden.

    Die HTML5-Elemente sind natürlich strukturierter, keine Frage, aber man sollte nicht den Weg gehen, grundsätzlich von DIV-Layouts abzuraten, nur weil das bei TABLE so war/ist.

  • Hallo,


    hier der Code



    So sieht ein Ergebnis aus:

    bei einer gespeicherten Position:


    [{"status":"ok","number":"01624356900","emergency_number":0,"time":"2019-05-29 18:36:53","location_latitude":"48.05118","location_longitude":"8.52969","location_time":"2019-05-29 18:36:53","location_altitude":"200","location_floor":"20","location_source":"cell","location_accuracy":"20","location_vertical_accuracy":"2","location_confidence":"0.6827","location_bearing":"270","location_speed":"11"}]



    bei mehreren Positionen (5):

    [{"status":"ok","number":"01624356900","emergency_number":0,"time":"2019-05-30 10:12:34","location_latitude":"48.063907","location_longitude":"8.499586","location_time":"2019-05-30 10:12:34","location_altitude":"710","location_floor":"","location_source":"cell","location_accuracy":"1","location_vertical_accuracy":"1","location_confidence":"1","location_bearing":"176","location_speed":"2"},{"status":"ok","number":"01624356900","emergency_number":0,"time":"2019-05-30 10:11:52","location_latitude":"48.064602","location_longitude":"8.499956","location_time":"2019-05-30 10:11:52","location_altitude":"722","location_floor":"","location_source":"cell","location_accuracy":"3","location_vertical_accuracy":"3","location_confidence":"0.97","location_bearing":"186","location_speed":"4"},{"status":"ok","number":"01624356900","emergency_number":0,"time":"2019-05-30 10:08:50","location_latitude":"48.066403","location_longitude":"8.500216","location_time":"2019-05-30 10:08:50","location_altitude":"742","location_floor":"","location_source":"cell","location_accuracy":"5","location_vertical_accuracy":"5","location_confidence":"0.95","location_bearing":"350","location_speed":"4"},{"status":"ok","number":"01624356900","emergency_number":0,"time":"2019-05-30 10:08:07","location_latitude":"48.063541","location_longitude":"8.500758","location_time":"2019-05-30 10:08:07","location_altitude":"711","location_floor":"","location_source":"cell","location_accuracy":"15","location_vertical_accuracy":"10","location_confidence":"0.75","location_bearing":"330","location_speed":"8"},{"status":"ok","number":"01624356900","emergency_number":0,"time":"2019-05-30 10:07:02","location_latitude":"48.062498","location_longitude":"8.501214","location_time":"2019-05-30 10:07:02","location_altitude":"701","location_floor":"","location_source":"cell","location_accuracy":"50","location_vertical_accuracy":"50","location_confidence":"0.5","location_bearing":"325","location_speed":"10"}]



    Grüße
    Michael

  • Hey,


    Arne Drews : Okay. Das ist mir noch nie aufgefallen. Divs sollte man nach der jetztigen Regelform nur nutzen bei Sachen die in keinen anderen passenden Tag reinpassen.


    schalke: Was mir aufgefallen ist ist, dass du HTML 4 benutzt Dies ist eine veraltete Version. Es ist bereits seit langem die neue Version 5 draußen. Diese kannst du ganz einfach hier erlernen, bzw. die Neuerungen dir dort anschauen.


    Woher kommt denn $position_0, $position_1 & $position_2 ? Sind das die Daten aus dem JSON?xx


    Nun ein Beispiel wie du es machen kannst wie du es willst:


    Grüße,

    Stef

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!