Ergebnis 1 bis 13 von 13

Thema: Formulargenerator - Inhalte erst nach Aktivierung einer Checkbox anzeigen

  1. #1
    Contao-Nutzer
    Registriert seit
    13.08.2013.
    Beiträge
    63

    Standard Formulargenerator - Inhalte erst nach Aktivierung einer Checkbox anzeigen

    Hallo zusammen,

    ich habe im Formulargenerator ein Formular erstellt. Unter Anderem habe die User die Möglichkeit ihre Bankverbindung anzugeben, allerdings erscheinen diese Felder erst wenn Sie eine Checkbox aktiviert haben.
    Dieses Formular lese ich auf der Weiterleistungsseite mittels Insert-Tags aus und habe die einzelnen Abschnitte mit Überschriften unterteilt. Wird die Checkbox nicht aktiviert, werden logischerweise noch die Überschriften angezeigt.

    Gibt es eine Möglichkeit, mit der ich sagen kann, dass auch die Überschriften erst dann angezeigt werden, wenn die Checkbox aktiviert wurde?

    Ich hoffe ihr könnt mir in der Hinsicht weiterhelfen und freue mich auf eure Feedbacks!

  2. #2
    Contao-Nutzer
    Registriert seit
    13.08.2013.
    Beiträge
    63

    Standard

    Hat wirklich niemand eine Idee??

  3. #3
    Contao-Nutzer Avatar von baumannsv
    Registriert seit
    28.01.2015.
    Beiträge
    152

    Standard

    Schau dir mal folgende Erweiterung mit der kannst du das realisieren.

    conditionalforms

  4. #4
    Contao-Nutzer
    Registriert seit
    13.08.2013.
    Beiträge
    63

    Standard

    Hallo,

    vielen Dank für die Antwort, allerdings verwende ich das Modul schon im Formular.

    Mein Problem ist, ich lese auf der "Vielen Dank"-Seite (normaler Artikel) das Formular so aus:

    HTML-Code:
    <p>Wir werden uns mit Ihnen in Kürze hinsichtlich des Abholtermins in Verbindung setzen.</p>
    <h1>Zusammenfassung:</h1>
    <table>
    <tbody>
    <tr>
    <td width="110">{{post::feld_1}}<br>{{post::anzahl_1}}</td>
    <td width="10">[nbsp]</td>
    <td width="110">{{post::feld_7}}<br>{{post::anzahl_7}}</td>
    <td width="10">[nbsp]</td>
    <td width="110">{{post::feld_13}}<br>{{post::anzahl_13}}</td>
    <td width="10">[nbsp]</td>
    <td width="110">{{post::feld_19}}<br>{{post::anzahl_19}}</td>
    <td width="10">[nbsp]</td>
    <td width="110">{{post::feld_25}}<br>{{post::anzahl_25}}</td>
    </tr>
    <tr>
    <td width="110">{{post::feld_2}}<br>{{post::anzahl_2}}</td>
    <td width="10">[nbsp]</td>
    <td width="110">{{post::feld_8}}<br>{{post::anzahl_8}}</td>
    <td width="10">[nbsp]</td>
    <td width="110">{{post::feld_14}}<br>{{post::anzahl_14}}</td>
    <td width="10">[nbsp]</td>
    <td width="110">{{post::feld_20}}<br>{{post::anzahl_20}}</td>
    <td width="10">[nbsp]</td>
    <td width="110">{{post::feld_26}}<br>{{post::anzahl_26}}</td>
    </tr>
    <tr>
    <td width="110">{{post::feld_3}}<br>{{post::anzahl_3}}</td>
    <td width="10">[nbsp]</td>
    <td width="110">{{post::feld_9}}<br>{{post::anzahl_9}}</td>
    <td width="10">[nbsp]</td>
    <td width="110">{{post::feld_15}}<br>{{post::anzahl_15}}</td>
    <td width="10">[nbsp]</td>
    <td width="110">{{post::feld_21}}<br>{{post::anzahl_21}}</td>
    <td width="10">[nbsp]</td>
    <td width="110">{{post::feld_27}}<br>{{post::anzahl_27}}</td>
    </tr>
    <tr>
    <td width="110">{{post::feld_4}}<br>{{post::anzahl_4}}</td>
    <td width="10">[nbsp]</td>
    <td width="110">{{post::feld_10}}<br>{{post::anzahl_10}}</td>
    <td width="10">[nbsp]</td>
    <td width="110">{{post::feld_16}}<br>{{post::anzahl_16}}</td>
    <td width="10">[nbsp]</td>
    <td width="110">{{post::feld_22}}<br>{{post::anzahl_22}}</td>
    <td width="10">[nbsp]</td>
    <td width="110">{{post::feld_28}}<br>{{post::anzahl_28}}</td>
    </tr>
    <tr>
    <td width="110">{{post::feld_5}}<br>{{post::anzahl_5}}</td>
    <td width="10">[nbsp]</td>
    <td width="110">{{post::feld_11}}<br>{{post::anzahl_11}}</td>
    <td width="10">[nbsp]</td>
    <td width="110">{{post::feld_17}}<br>{{post::anzahl_17}}</td>
    <td width="10">[nbsp]</td>
    <td width="110">{{post::feld_23}}<br>{{post::anzahl_23}}</td>
    <td width="10">[nbsp]</td>
    <td width="110">{{post::feld_29}}<br>{{post::anzahl_29}}</td>
    </tr>
    <tr>
    <td width="110">{{post::feld_6}}<br>{{post::anzahl_6}}</td>
    <td width="10">[nbsp]</td>
    <td width="110">{{post::feld_12}}<br>{{post::anzahl_12}}</td>
    <td width="10">[nbsp]</td>
    <td width="110">{{post::feld_18}}<br>{{post::anzahl_18}}</td>
    <td width="10">[nbsp]</td>
    <td width="110">{{post::feld_24}}<br>{{post::anzahl_24}}</td>
    <td width="10">[nbsp]</td>
    <td width="110">[nbsp]</td>
    </tr>
    </tbody>
    </table>
    <h1>Hier soll Sperrmüll sowie Elektro- und Metallschrott abgeholt werden:</h1>
    <p>{{post::Vorname}}<br>{{post::Name}}<br>{{post::Str_Hausnr}}<br>{{post::PLZ}}<br>{{post::Ort}}<br>{{post::Telefon}}<br>{{post::E-Mail}}<br>{{post::Mitteilung}}<br><br>
    
    
    {{post::erweiterung_1_sperrmuellexpress}}</p>
    <h1>---Überschrift1---</h1>
    <p>{{post::Rechnung}}</p>
    <h1>---Überschrift2---</h1>
    <h1>---Überschrift3---</h1>
    <p>{{post::Kontonummer}}<br>{{post::BLZ}}<br>{{post::Geldinstitut}}<br>{{post::IBAN}}<br>{{post::BIC}}</p>
    
    
    <h1>Adresse für die Rückantwortkarte (falls abweichend):</h1>
    <p>{{post::Vorname_Antwort}}<br>{{post::Name_Antwort}}<br>{{post::Str_Hausnr_Antwort}}<br>{{post::PLZ_Antwort}}<br>{{post::Ort_Antwort}}<br>{{post::Telefon_Antwort}}<br>{{post::E-Mail_Antwort}}</p>
    und möchte das die Überschriften 1,2 und 3 erst dann angezeigt werden, wenn Checkbox "erweiterung_1_sperrmüllexpress" (conditionalforms) aktiviert wurde.

    Hast du/ habt ihr dazu eventuell noch eine Idee?
    Geändert von maxpress (05.02.2015 um 08:06 Uhr)

  5. #5
    Contao-Nutzer Avatar von baumannsv
    Registriert seit
    28.01.2015.
    Beiträge
    152

    Standard

    das geht da muss eine if abfrage rein.

    kannst dir mal das anschauen vielleicht hilft dies weiter:
    https://contao.org/de/manual/3.3/man...ersonalisieren

    wenn nicht mache ein Template

  6. #6
    Contao-Nutzer
    Registriert seit
    13.08.2013.
    Beiträge
    63

    Standard

    Hallo,

    ich habe jetzt auch in anderen Themen und Foren geschaut, da die Insert-Tags aus dem Handbuch bei mir nicht funktionieren wollen.. trotzdem vielen Dank

    Code:
    {if '{{form::erweiterung_1_sperrmuellexpress}}' == '1'}
    Yes
    {else}
    No
    {endif}
    Hab mir das jetzt mal ein wenig zurecht geschnitzt und habe das Gefühl, ich bin ganz nahe dran
    Doch irgendwie wird nur das "No" ausgegeben.
    Ist vielleicht der Value-Wert hinter den == falsch oder was mache ich verkehrt?

    Eventuell weiß ja einer von euch einen Rat.
    Ich würde mich sehr freuen.

  7. #7
    Contao-Nutzer
    Registriert seit
    13.08.2013.
    Beiträge
    63

    Standard

    Hallo nochmal,

    ich habe jetzt doch ein Template erstellt und eine if/else-Abfrage eingebunden und den Checkbox-Namen geändert.

    PHP-Code:
    <?php if ($_POST["sperrmuellexpress"]) {
      echo 
    "Yes";
    }
    else {
      echo 
    "No";
      
    ?>
      <?php
    ?>
    Doch leider wird wieder nur das "No" ausgegeben.
    Was mache ich falsch?

    Jemand eine Idee?

  8. #8
    Contao-Nutzer
    Registriert seit
    18.03.2014.
    Beiträge
    48

    Standard

    Muss da nicht auch abgefragt werden ob die Bedingung wahr ist?
    ala =="wasweissich"

    Also aus meiner Zeit mit PHP-Versuchen weiss ich noch, das ich das wohl folgendermaßen gemacht hätte. Aber Achtung, das ist eher gefährliches Halbwissen und ohne Gewähr.

    PHP-Code:
    <?php
    $express 
    $_POST["sperrmuellexpress"];

    if(
    $express=="1")
       {
       echo 
    "Yes";
       }
    else
       
    und so weiter.......
    Geändert von schnaub (13.02.2015 um 06:52 Uhr)
    Gruß vom Schnaub

  9. #9
    Contao-Nutzer
    Registriert seit
    13.08.2013.
    Beiträge
    63

    Standard

    Guten Morgen,

    vielen Dank für deine Antwort, nur leider will es irgendwie nicht funktionieren.
    Es wird wieder nur das "No" ausgegeben.

    "== "wasweissich"" ist doch der Value-Wert oder..?
    ..und der ist bei mir auch 1.

    Es sah aber schon richtig aus

    Wo ist nur der Fehler?

    Hier ist mal der Code von der Checkbox:
    HTML-Code:
    <input id="opt_229" class="checkbox" type="checkbox" onclick="if(this.checked) { document.id('condition_sperrmuellexpress').style.display='block'; } else { document.id('condition_sperrmuellexpress').style.display='none'; }" value="1" name="sperrmuellexpress">
    <label for="opt_229">SperrmüllExpress</label>
    Geändert von maxpress (13.02.2015 um 08:03 Uhr)

  10. #10
    Contao-Nutzer
    Registriert seit
    13.08.2013.
    Beiträge
    63

    Standard

    ..oder ist vielleicht die if-Variable falsch und im Template für Contao nicht erkennbar?

  11. #11
    Contao-Nutzer
    Registriert seit
    13.08.2013.
    Beiträge
    63

    Standard

    ..oder muss die Abfrage so oder so ähnlich aussehen?
    PHP-Code:
    <?php if ($_POST['$this->replaceInsertTags( '{{post::sperrmuellexpress}}' )'] == "1"): ?>
       Yes
       
    <?php else: ?>
    No

    <?php endif; ?>

  12. #12
    Contao-Fan
    Registriert seit
    16.05.2014.
    Beiträge
    295

    Standard

    Bei mir mit Feldname "checkbox" finktioniert:
    PHP-Code:
    <?php
    if(Input::post('checkbox') == '1'){
        echo 
    yes;
    }
    else{
        echo 
    no

    ?>

  13. #13
    Contao-Nutzer
    Registriert seit
    13.08.2013.
    Beiträge
    63

    Standard

    Guten Morgen,

    vielen vielen Dank.. es funktioniert tatsächlich!

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
  •