Ergebnis 1 bis 5 von 5

Thema: Checkbox ausblenden, wenn Wert in DB vorhanden

  1. #1
    Contao-Nutzer Avatar von Daniel24
    Registriert seit
    24.06.2014.
    Beiträge
    60

    Standard Checkbox ausblenden, wenn Wert in DB vorhanden

    Hallo zusammen,

    ich bin gerade dabei, für eine kleine Hausmesse mit rund 50 Ausstellern ein Anmeldeformular zu erstellen.
    Die Standflächen können einzeln oder auch zwei oder drei "gebucht" werden. Für diese Mehrfachauswahl habe ich überlegt, dass Ganze mittels Checkboxen zu lösen. Allerdings möchte ich gerne die Checkboxen ausblenden bzw. "unsichtbar" machen, wenn deren Werte schon in der DB gespeichert sind (sonst muss man ja händisch prüfen, ob des eine Doppelbelegung gibt).

    Geht das überhaupt mit Checkboxen oder sollte dafür etwas anderes verwendet werden?

    Die Seite läuft unter Contao 4.6.14 und zum Speichern wird leads eingesetzt.

    Vielen Dank schon mal für jede Idee und Anregung oder gar Lösung!

    Liebe Grüße
    Daniel

  2. #2
    Contao-Fan Avatar von designpilot
    Registriert seit
    16.06.2013.
    Ort
    9532 Rickenbach bei Wil
    Beiträge
    272
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Ich müsste mich irren, aber kann man beim Formulargenerator wenn man die Felder anlegt nicht auch IF Abfragen einbauen????

    Ich meine mich zu erinnern das Toflar mal in einem Video was auf der Contao YouTube Seite steht was dazu gesagt hatte.

    Ob man das so mit den IF Abfragen lösen kann müsstest Du nochmal genau nachschauen (wenn es so gehen würde, wär das für Dich doch der Idealfall)


    Gesendet von iPhone mit Tapatalk Pro

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

    Support Contao

    Standard

    Wenn das direkt im Formular zu sehen sein soll, dann muss man das über ein eigenes Widget machen ... vlt. kann man das auch im Widget Template machen ...

    Oder man prüft das bei der Formularvalidierung und weißt es da ggf. ab.

    Alles in allem aber ohne Programmierung nicht möglich.

  4. #4
    Contao-Nutzer Avatar von Daniel24
    Registriert seit
    24.06.2014.
    Beiträge
    60

    Standard

    Es freut mich, dass Checkboxen per se nicht ausgeschlossen sind …

    Wenn ich das Template verwende und dort z. B. nach <Label> etwas per PHP anzeige, wäre das ein Weg?
    Allerdings führt folgender Code zu keinem Ergebnis:
    PHP-Code:
    $result = \Database::getInstance()->prepare("SELECT *  from tl_lead_data WHERE value='value'") ->execute(); 
    if ( 
    $result->value == "value")
    echo 
    "RESERVIERT"
    Der folgende Eintrag sorgt dafür, dass hinter jeder Checkbox ein Vermerk ist (und nicht nur hinter dem Wert, der in der Datenbank enthalten ist):
    PHP-Code:
    $result = \Database::getInstance()->prepare("SELECT *  from tl_lead_data WHERE value='value'") ->execute(); 
    if ( 
    $result->numRows "0")
    echo 
    "RESERVIERT"
    Alternativ habe ich mir schon mal den Hook "loadFormField" angeschaut, bin da aber auch nicht weitergekommen (= keine Reaktion).

    Liebe Grüße
    Daniel

  5. #5
    Contao-Nutzer Avatar von Daniel24
    Registriert seit
    24.06.2014.
    Beiträge
    60

    Standard

    So, nach etlichem Kopfzerbrechen und noch mehr Recherche habe ich für mich einen Weg gefunden, die Werte abzufragen. Das "Problem" ist, dass die Werte der Checkbox "anderes" abspeichert werden.
    Für den Fall, dass jemand anders vor der gleichen Herausforderung steht, hier meine Lösung mit "like" und Platzhaltern (%):

    PHP-Code:
    $result = \Database::getInstance()->prepare("SELECT * from tl_lead_data WHERE value like '%$boxvalue%'") ->execute(); 
    Liebe Grüße
    Daniel

Aktive Benutzer

Aktive Benutzer

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

Berechtigungen

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