2012-04-07 7 views
0

Ich habe eine Frage an den Daten auf MySql speichern, was wäre ein besserer Weg, so etwas wie dieses zu speichern:Das Speichern von Informationen als serialisierten Daten in Mysql oder als einzelne Felder

Ich versuche, eine Anwendung, in der Nutzer zu erstellen kann verschiedene anpassbare Formularfelder speichern, z Wenn ich ein Kontaktformular brauche, kann ich ein Formular mit From-Textfeld, Subject-Dropdown-Feld, Message-Textarea-Feld und ebenfalls ein anderes Formular mit verschiedenen Formularelementen erstellen. Und zu diesem Zweck kann der Benutzer Namen und Werte oder andere Formularattribute für die Felder festlegen.

Allerdings, was wird eine bessere Möglichkeit sein, diese Information zu speichern, so dass es einfach für den Abruf sein wird, ein dynamisches Formular für den Benutzer zu erstellen, um den Inhalt leicht zu ändern, sowie sie zu verwenden?

Ich konnte nur denken über 2 Möglichkeiten der Speicherung von ihnen:

  1. Innerhalb einer Tabelle mit Schema wie solche id, Form, Element, Name, Wert

    Element_ID | form_id | Element | Name | Wert |
    1 | 1 | Textfeld | zu | null |
    2 | 1 | Auswahlbox | Thema | allgemein, Unterstützung |

  2. als ein Feld in einer Tabelle mit Datentyp als BLOB könnte

Bitte beraten als serialize Daten gespeichert werden. Vielen Dank.

Antwort

1

Nun, ich selbst bevorzuge es, serialisierte Daten in meinen Entwürfen zu verwenden. Aber es hängt wirklich von den Dingen ab, die du damit machen wirst.

Ich fand this blog article beschreibt die Höhen und Tiefen, die für Ihre Entscheidung hilfreich sein kann.

0

Nun, ich habe eine gute Idee, aber es beinhaltet verschiedene Tabellen. Erstellen Sie zunächst eine Tabelle Form_fields mit Feldern id, field_name Zweite Tabelle Attribute mit ID, Attribut Dritte Tabelle Feldattribute mit ID, Form_field_id und Attribut-ID. Dies ist eine Beziehungstabelle. Jetzt machen Sie die Backends mit PHP und MySQL.

Verwandte Themen