Ergebnis 1 bis 7 von 7

Thema: Wert aus HTML-Feld an EFG übergeben?

  1. #1
    Contao-Fan Avatar von Stefko
    Registriert seit
    25.10.2012.
    Ort
    Karlsruhe
    Beiträge
    775
    User beschenken
    Wunschliste

    Standard Wert aus HTML-Feld an EFG übergeben?

    Hallo zusammen,

    ich habe mit EFG ein mehrseitiges (Bestell-)Formular mit einer Zusammenfassung der eingegebenen Daten am Ende erstellt.
    Auf der ersten Seite führe ich mit dem jQuery-Plugin Calx (1) eine Berechnung durch. Dies geschieht in dem Feldtyp HTML. Darin steht folgender Code:

    HTML-Code:
    <p> Netto Preis (exkl. MwSt): <span id="netto_preis" name="netto_preis" data-format="$ 0,0[.]00" data-formula="($ctrl_50*400)+($ctrl_51*300)+($ctrl_52*150)+($ctrl_75*100)"></span></p>
    Die Berechnung klappt und wird auch auf der Seite ausgegeben. Allerdings wird der Wert ("netto_preis") nicht in die DB geschrieben, bzw. das Feld "netto_preis" gar nicht angelegt.
    Ebenso wird dann der Preis dann nicht in der Zusammenfassung vor dem Abschicken angezeigt.

    Kann mir jemand weiterhelfen, wie ich den Wert "netto_preis" an EFG übergeben kann?

    Danke schonmal und beste Grüße,
    Stefko


    (1) http://www.xsanisty.com/project/calx/

  2. #2
    Contao-Urgestein Avatar von cliffparnitzky
    Registriert seit
    08.10.2010.
    Ort
    Lüneburg
    Beiträge
    2.452
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Moin,

    also erstmal vorab ein paar Dinge zu Formularen, dem Contao Formular Generator und EFG:

    a.) Grundsätzlichen können nur Daten aus Formularfeldern (text, hidden, select, etc.) gespeichert werden
    b.) Formularfelder die im Backend nicht angelegt sind, werden auch nicht gespeichert (abgesehen von spezieller Programmierung)
    c.) Formularfelder die im Feldtyp HTML angelegt sind, zählen nicht automatisch dazu

    Nun zu deinem Beispiel.

    1.) ein "span" ist kein Formularfeld ... kann also grundsätzlich schon mal nicht zur Datenspeicherung verwendet werden
    2.) wenn du daraus ein Textfeld machst, gilt b.) und c.)

    Was du benötigst ist ein Formularfeld (in deinem Fall würden "hidden" reichen). Das muss im Backend angelegt sein und sollte 'netto_preis' heißen, wenn du das so wünschst.

    Nun musst du noch die Berechnung aus deinem Beispiel in das Hidden Field packen.

    Dann sollte alles gespeichert werden.

    Gruß, Cliff

  3. #3
    Contao-Fan Avatar von Stefko
    Registriert seit
    25.10.2012.
    Ort
    Karlsruhe
    Beiträge
    775
    User beschenken
    Wunschliste

    Standard

    Ahoi,

    Vielen Dank für Deine Erläuterungen.

    An ein hidden-Feld, habe ich zu Beginn auch gedacht. Mir ist aber nicht klar, wie ich da meine Berechnung reinpacken kann - weswegen ich dann ja auf HTML ausgewichen bin.

    Ich habe jetzt eben mal versucht für dieses hidden-field ein extra Template zu erstellen und habe dort
    PHP-Code:
    value="<?php echo $_SESSION['FORM_DATA']['netto_preis']; ?>
    eingefügt.
    Das funktioniert leider auch nicht.

    Hast Du einen Tipp, wie ich die Berechnung, bzw. das Ergebnis von dieser in das hidden-field bekomme?

    Danke und Grüße,
    Stefko

  4. #4
    Contao-Urgestein Avatar von cliffparnitzky
    Registriert seit
    08.10.2010.
    Ort
    Lüneburg
    Beiträge
    2.452
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Naja, das calx berechnet den Wert ja erst, wenn die Seite geladen wird.

    Deshalb ist dieser nicht in der Session zu finden.

    Da müsstest du dich quasi mit Javascript dahinter klemmen, um eben diesen berechneten Wert in das Feld zu schreiben.

    Gruß, Cliff

  5. #5
    Contao-Urgestein Avatar von fiedsch
    Registriert seit
    09.07.2009.
    Ort
    München
    Beiträge
    2.947

    Standard

    Mal unabhängig davon, wie Du die Daten in das Formular bringst: solche Berechnungen gehören auf den Server, sonst schreibe ich Dir als User in den netto_preis 0 rein und schicke das Formular ab. Danke für die günstige Bestellung ;-)

  6. #6
    Contao-Nutzer Avatar von Schmidty
    Registriert seit
    06.06.2011.
    Ort
    Pforzheim
    Beiträge
    203

    Standard Berechnung mit EFG und Hook processEfgFormData

    Hallo,

    ich habe das schon mit EFG und dem Hook processEfgFormData umgesetzt.

    Die Anleitung findest Du hier.

    Viele Grüße

    Schmidty

  7. #7
    Contao-Fan Avatar von Stefko
    Registriert seit
    25.10.2012.
    Ort
    Karlsruhe
    Beiträge
    775
    User beschenken
    Wunschliste

    Standard

    Hallo,

    sorry erstmal für meine verspätete Antwort, mich hatte es ziemlich erwischt und ich lag mit nem wüsten Infekt danieder.

    Ich habe das Problem jetzt, wie von cliffen vorgeschlagen, mit einem hidden-field und JavaScript gelöst.

    @fiedsch: da hast Du mit Sicherheit recht, in dem speziellen Fall spielt das aber eigentlich keine Rolle, da es hierbei nur um eine Art Show-Case geht.

    @Schmidty: Dir auch vielen Dank für den Hinweis, werde ich mir in einer stillen "Minute" mal zu Gemüte führen.

    Grüße,
    Stefko

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •