Ergebnis 1 bis 4 von 4

Thema: Formulardaten in einer Datenbanktabelle speichern

  1. #1
    Contao-Nutzer
    Registriert seit
    21.03.2011.
    Beiträge
    3

    Standard Formulardaten in einer Datenbanktabelle speichern

    Hallo zusammen,
    ich möchte gerne Daten aus einem Formular, das ich mit dem Formulargenerator erstellt habe in einer Datenbank speichern. Dazu habe ich die Datenbank manuell über phpmyadmin angelegt (eine Funktion in Contao habe ich nicht gefunden) und für die Textfelder varchar mit Länge 255 als Spaltentyp gewählt.
    Nun befindet sich auch eine Checkbox im Formular und ich muss speichern, ob diese aufgewählt ist, oder nicht. Welchen Spaltentyp muss ich verwenden? Woran könnte der Fehler (siehe unten) sonst liegen? Da es offensichtlich keine Dokumentation für Contao gibt und ich nicht alle Feldtypen ausprobieren möchte, wende ich mich ans Euch...
    Lösche ich die Checkbox aus dem Formular, in dem dann nur noch Textfelder sind, funktioniert alles.

    Ich verwende Typolight 2.7.3 und muss diese Version auch verwenden.

    Die Fehlermeldung lautet:
    Fatal error: Uncaught exception Exception with message Query error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'show, publish) VALUES ('text', 'text', 'text', 'text', 'text', 'text'' at line 1 (INSERT INTO table (firstname, lastname, organisation, addressline1, addressline2, zipcode, town, country, email, show, publish) VALUES ('text', 'text', 'text', 'text', 'text', 'text', 'text', 'text', 'text', 'show', 'publish')) thrown in /home/www.homepage.de/html/system/libraries/Database.php on line 519

    #0 /home/www.homepage.de/html/system/modules/frontend/Form.php(409): Database_Statement->execute()
    #1 /home/www.homepage.de/html/system/modules/frontend/Form.php(202): Form->processFormData(Array)
    #2 /home/www.homepage.de/html/system/modules/frontend/Hybrid.php(151): Form->compile()
    #3 /home/www.homepage.de/html/system/modules/frontend/Form.php(72): Hybrid->generate()
    #4 /home/www.homepage.de/html/system/libraries/Controller.php(362): Form->generate()
    #5 /home/www.homepage.de/html/system/modules/frontend/ModuleArticle.php(169): Controller->getContentElement('176')
    #6 /home/www.homepage.de/html/system/modules/frontend/Module.php(126): ModuleArticle->compile()
    #7 /home/www.homepage.de/html/system/modules/frontend/ModuleArticle.php(69): Module->generate()
    #8 /home/www.homepage.de/html/system/libraries/Controller.php(295): ModuleArticle->generate(false)
    #9 /home/www.homepage.de/html/system/libraries/Controller.php(182): Controller->getArticle('100', false, false, 'main')
    #10 /home/www.homepage.de/html/system/modules/frontend/PageRegular.php(68): Controller->getFrontendModule('0', 'main')
    #11 /home/www.homepage.de/html/index.php(187): PageRegular->generate(Object(DB_Mysql_Result))
    #12 /home/www.homepage.de/html/index.php(288): Index->run()
    #13 {main}

    Viele Grüße und vielen Dank im Voraus

  2. #2
    Contao-Fan Avatar von Bandyt
    Registriert seit
    22.04.2010.
    Ort
    Bremen
    Beiträge
    808

    Standard

    Für Erweiterungen nutze ich immer den Feldtyp char(1) für checkboxen. Ich weiß aber nicht, ob das bei Formularen auch geht...
    Meine Erweiterungen: League Manager | Forum

  3. #3
    Contao-Nutzer
    Registriert seit
    21.03.2011.
    Beiträge
    3

    Standard Lösung

    Danke für den Hinweis. Es ist aber nicht der Typ der Spalte, sondern der Bezeichner. "show" scheint ein reserviertes Wort zu sein (schwer zu sagen ohne Dokumentation...). Benenne ich die Spalte um in "showabc", funktioniert alles bestens (sowohl mit varchar(255) und "show" als wert, als auch mit char(1) und "s" als Wert (wobei "char(1) natürlich sparsamer ist - guter Tipp!)).

    Viele Grüße

  4. #4
    Contao-Nutzer Avatar von astweg5
    Registriert seit
    03.11.2010.
    Ort
    S-H
    Beiträge
    13

    Standard

    Zitat Zitat von J6u7fvg45r Beitrag anzeigen
    ...(schwer zu sagen ohne Dokumentation...). ...
    http://dev.mysql.com/doc/refman/5.1-...ved-words.html

    Vielleicht hilft das...

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
  •