Hallo,
ich möchte gerne ein Formular erstellen bei dem der Nutzer neben normalen Formulardaten auch eine beliebige Anzahl von 1:n verknüpften Datensätzen, in meinem Fall Bücher, eingeben soll.
Da keine der einschlägigen Extensions das schon zu bieten scheint, muss ich es wohl oder übel selber versuchen. Die Frage ist nun wie ich am besten beginnen soll. Nach ein wenig googlen scheinen mir 3 Extensions als Basis in Frage zu kommen:
- formidable
- mailformplus
- powermail
Ich möchte mich aber ungern tagelang irgendwo einarbeiten um dann zu merken, dass die Basis falsch war...
Momentan scheint es mit allen Kandidaten irgendwie zu gehen, formidable sieht weit mächtiger aus ist aber vielleicht auch mit Kanonen auf Spatzen geschossen oder ?
Ich bin also auch an ganz kurzen Hinweisen, Richtungsweisungen und Stichworten sehr interessiert, wie man soetwas machen könnte 🙂
Vielen Dank!
Till
tillj schrieb
bei dem der Nutzer neben normalen Formulardaten auch eine beliebige Anzahl von 1:n verknüpften Datensätzen, in meinem Fall Bücher, eingeben soll
Was soll dann passieren? Die Bücherdaten werden in eine Extra Tabelle gespeichert - und mit was sind diese dann verknüpft?
Die Bücher sollen ganz einfach mit dem Stammdatensatz verknüpft sein.
Ich lege also ein Profil mit normalen Daten wie Name etc an. Das Profil hat eine UID, die dann in den neu anzulegenden Datensätzen gespeichert wird. Nur kann die Anzahl der Bücher zwischen 1 und 500 schwanken. Für jedes Buch eine neue Seite macht also genausowenig Sinn wie eine Liste von 500 leeren Zeilen in denen ich dann die Anzahl von Büchern eintrage die ich habe.
Am Ende brauche ich eine Liste von Feldern die ich z.B. per Ajax um jeweils eine Zeile erweitern bzw verkleinern kann.
Nochmal etwas abstrakter:
Zu einem Stammdatensatz in einem Formular möchte ich beliebig viele 1:N verknüpfte Datensätze anlegen. Da die Datensätze sehr klein sind, möchte ich das im selben Formular anbieten.
Mir fallen spontan 2 Möglichkeiten ein:
1. Eine Eingabemaske plus Liste (per Ajax)
Es gibt einige normale Textfelder die zusammen einen Datensatz aufnehmen. Klicke ich auf einen nebenstehenden Knopf, werden die Felder in die verknüpfte Tabelle geschrieben und erscheinen als Kurzansicht in einer Liste unter den Textfeldern.
Neben jeder Kurzansicht gibt es Buttons um den Datensatz zu löschen oder zum aktualisieren wieder in die Eingabefelder zu laden.
2. Eine Liste
Jeder Eintrag ergänzt das grosse Formular um eine Gruppe von Eingabefeldern. Es gibt lediglich einen Button um eine neue Zeile von Eingabefeldern zu erzeugen. Zum speichern werden nach dem Submit des grossen Formulars die ids der Zeilen durchlaufen und die entsprechenden Datensätze angelegt.
Im Backend wäre das alles kein Problem nur kann ich meinen technisch nun wirklich nicht versierten Nutzern das nicht zumuten 🙂
Für mich ist das eine neue Extension und hat eigentlich erstmal nichts mit einer vorhandenen Formular Extension zu tun...
Grüße, Alex
Warum das ? Das ist doch eine ganz elementare Funktion zur Eingabe beliebiger Daten oder ?
Ich bin erst ganz intuitiv davon ausgegangen das es in einer der Formularerweiterungen, analog zum Backend, eine Art simplen Datentyp wie Database Relation gibt. Nun ist es sicherlich richtig, dass komplexe Daten eher im Backend und selten von Frontend-Usern eingegeben werden aber ich bin doch sicherlich nicht der erste mit dem Problem ?
Was schlägst du denn vor wenn ich mir nicht zutraue eine komplette Neue Extension für sowas auf die Beine zu stellen. Sollte ich das lieber komplett selbst per UserFunc schreiben oder doch zumindest eine der genannten Extensions für den Rest des Forumulars verwenden und meinen Code per Hooks oder aehnlich einbauen ?
Dank und Grüße,
Till
tillj schrieb
Warum das ? Das ist doch eine ganz elementare Funktion zur Eingabe beliebiger Daten oder ?
Ich bin erst ganz intuitiv davon ausgegangen das es in einer der Formularerweiterungen, analog zum Backend, eine Art simplen Datentyp wie Database Relation gibt. Nun ist es sicherlich richtig, dass komplexe Daten eher im Backend und selten von Frontend-Usern eingegeben werden aber ich bin doch sicherlich nicht der erste mit dem Problem ?
Was schlägst du denn vor wenn ich mir nicht zutraue eine komplette Neue Extension für sowas auf die Beine zu stellen. Sollte ich das lieber komplett selbst per UserFunc schreiben oder doch zumindest eine der genannten Extensions für den Rest des Forumulars verwenden und meinen Code per Hooks oder aehnlich einbauen ?
Dank und Grüße,
Till
Selbstverständlich könntest du Powermail oder Mailformplus über Hooks/Userfunc ohne Ende erweitern - aber ich denke dass du mit einer eigenen Erweiterung schneller wärst...
Na gut dann werd ich wohl einfach mal herumbasteln und schauen was passiert 🙂
Danke fuers damit befassen.