Ich möchte mehrere Einträge (Zeilen) über "INSERT" in eine MySQL-Datenbank machen, weiß aber vorher nur, dass es zwischen einem und 40 Einträgen sein werden. Die exakte Zahl legt der Benutzer des Formulars fest.
Legt er die Zahl explizit fest oder ergibt sie sich beispielsweise aus der Anzahl ausgefüller oder Felder? Ihre Zahl ist nicht wichtig, aber die Art, wie die Daten übergeben werden (sollen).
Er wählt mittels Select-Feld aus, wie viele Eingabefelder er bekommt, die er dann ausfüllen kann...
Die mit Post übergebenen Werte sind durchnummeriert wie im Beispiel, so dass es vielleicht über ein Schleife gehen könnte, allerdings komme ich im Moment einfach nicht drauf, mir fehlt immer wieder eine Kleinigkeit...
Durchnummeriert als foo1, foo2, ... oder als foo[1], foo[2], ...?
ersteres Name1, Name2, Name3 und das eben mit allen Daten, so dass man an der zahl erkennen kann zu welchem Datensatz sie gehören... ich habe nicht mit einem Array gearbeitet, würde das das ganze vereinfachen?
Da ich jetzt aber nicht weiß wie viele Datensätze im konkreten Fall eingetragen werden sollen ich aber auch nicht eine Unmenge an leeren Datensätzen erzeugen will hilft es auch nicht, einfach alle Werte zu übergeben?
Auf ein clientseitiges Anpassen der gesendeten Werte würde ich nicht nicht verlassen wollen. Das eintragende Script sollte prüfen, ob alle Daten vorhanden sind und welche aufgrund bestimmter Merkmale nicht bearbeitet werden sollen.
Hm, prinzipiell richtig, aber da der Nutzer im Prinzip "Nur" aus Vorgaben auswählt bzw. in zwei Felder Namen oder ähnliches einträgt, kann er nciht viel falsch machen und bei den Feldern, die er einträgt wäre es zumindest bei einem möglich, dass wirklich kein Wert vorhanden ist. Bei dem zweiten wäre meine Idee gewesen, eben dieses als Kriterium zu nutzen, falls ab dieser Zeile der Abbruch stattfinden soll und die folgenden Daten nicht mehr eingetragen werden.
Wo genau ist denn das Problem angesiedelt? Fehlt es an einer Idee, wie die Benutzer-Daten im Script erkannt werden können, wie deren Inhalt zwischen gewünscht und nicht gewünscht unterschieden werden kann, an der Formulierung eines Multi-Insert-SQL-Statements mit unterschiedlich langer Datensatzanzahl oder der Formulierung einer Schleife mit einzelnen Insert-Statements?
Meine Idee war als einen zusätzlichen Wert die Zahl der Datensätze, die der Anwender auswählt mit zu übergeben...
Dann hätte ich den Wert, um im zweiten Formular festzulegen, bis zu welchem Punkt ich den INSERT-Befehl ausführe, allerdings gelingt es mir nicht die Klammern des INSERT "on-the-fly" zu erstellen, das war bisher mein Lösungsansatz.
Ich bin mir aber auch nicht sicher, dass das überhaupt funktionieren würde.
Vielleicht wäre auch ein Array eine Lösung, da hängt es aber im Moment auch bei mir, wie ich die Daten dann im Array zusammenführe um sie dann im zweiten Script wieder zusammen zu führen...