unendliche Formularfelder
Ilja
- programmiertechnik
0 Anton0 Rouven0 Christian Seiler
yo,
ich brauche ein denkanstoss. ich habe eine tabelle hardware. eine hardware selbst kann eine nicht bekannte anzahl von eigenschaften haben, zum beispiel 1 festplatte mit 10 GB, noch eine platte mit 20 GB, 256 Ram speicher, etc. dankbanktechnisch war die lösung recht einfach, eine m:n beziehung zwischen hardware und eigenschaften. so weit kein problem.
nun will ich die hardware aber über php/html verwalten. das problem dabei ist, wenn ich nun ein formular erzeuge, um neue hardware aufzunehmen, dann stehe ich vor dem problem, dass ich eine unbekannte menge von eigenschaften für die neue hardware eingeben kann. in access kann man das schön per unterformular lösen, gibt man einen datensatz dort ein, wird automatisch platz für eine neue zeile gemacht.
doch wie löse ich das per html-formular. javascript will ich nicht verwenden, da die anwendung an unterschiedlichen rechner benutzt werden soll (mitarbeitern-plätze) und man nicht immer davon ausgehen kann, dass es aktiviert ist. auch könnte man erst alle anderen attribute der hardware eingeben und dann noch die anzahl der eigenschaften, die man zusätzlich angeben will, um dann auf einer nächsten seite genauso viele felder für die eigenschaften anzubieten. aber diese lösung sich durchzuklicken finde ich nicht so elegant.
hat jemand eine zündende idee für mein problem ?
Ilja
doch wie löse ich das per html-formular. javascript will ich nicht verwenden, da die anwendung an unterschiedlichen rechner benutzt werden soll (mitarbeitern-plätze) und man nicht immer davon ausgehen kann, dass es aktiviert ist.
Ohne Javascript kannste da nichts machen. Nur mit DHTML kannst du ein dynamisches HTML gestalten. Damit kannst du einfach neue Inputs ect. erstellen, also genau das was du willst.
Wer heutzutage Javascript aus hat, sich aber beschwert, ihm seis nicht dynmaisch genug, der ist selber schuld.
So long
Anton
Hi,
hat jemand eine zündende idee für mein problem ?
hmh, also ohne JavaScript wirds natürlich unschön, was aber noch gehen würde wäre ein Affenformular. Also immer sowas wie "Neu hinzufügen" und dann lädt das Formular mit den alten Werten und einer zusätzlichen Eingabemöglichkeit neu.
MfG
Rouven
Hallo Ilja,
doch wie löse ich das per html-formular. javascript will ich nicht verwenden, da die anwendung an unterschiedlichen rechner benutzt werden soll (mitarbeitern-plätze) und man nicht immer davon ausgehen kann, dass es aktiviert ist. auch könnte man erst alle anderen attribute der hardware eingeben und dann noch die anzahl der eigenschaften, die man zusätzlich angeben will, um dann auf einer nächsten seite genauso viele felder für die eigenschaften anzubieten. aber diese lösung sich durchzuklicken finde ich nicht so elegant.
hat jemand eine zündende idee für mein problem ?
Naja, Du kannst ja problemlos mehrere Submitbuttons in einem Formular unterbringen, dann bastele Dir halt sowas:
+-------------------------+
| Eingabefeld 1 |
+-------------------------+
+-------------------------+
| Eingabefeld 2 |
+-------------------------+
+-------------------------+
| Eingabefeld 3 |
+-------------------------+
+-------------------------+
| Eingabefeld 4 |
+-------------------------+
...
+-------------------------+ +-------------------------+
| Eingabefeld n | | Button: Mehr Einträge |
+-------------------------+ +-------------------------+
Wenn JavaScript aktiv ist fügst Du die weiteren Eingabefelder per JS hinzu, ansonsten (d.h. JS deaktiviert) wird das Formular an den Server gesandt, dort noch einmal exakt so ausgegeben - nur halt mit mehr Eingabefeldern.
Da allerdings der erste Submit-Button der Default-Submit-Button ist (wenn jemand z.B. Enter in einem Feld drückt), solltest Du ganz an den Anfang des Formulars einen normalen Submitbutton hinzufügen (Du kannst den ja per CSS verstecken), damit sich der Benutzer nicht wundert.
Viele Grüße,
Christian