Hallo zusammen,
ich habe eine Tabelle, in der es je Zeile eine Checkbox gibt, die drei Werte haben kann: unchecked (0), checked (1), indeterminate (2). Ich benötige diese drei Werte, sie sagen so etwas aus wie „habe ich nicht“ (0), „habe ich“ (1), „will ich nicht“ (2).
Ich möchte, dass diese Werte individuell für jeden Benutzer abgespeichert werden können. Ich dachte, ich erstelle eine Tabelle in der Datenbank mit zwei Spalten: user_id und values.
Jeder Benutzer sieht nur die values entsprechend seiner user_id und kann auch nur diese aktualisieren. Bei den values würde es sich um einen String mit Zahlen handeln, z.B. „2 0 1“, drei Ziffern für drei Zeilen in der Tabelle (angenommen die Tabelle hat jetzt mal nur drei Zeilen). Mit PHP wird dieser string dann in integers zerlegt, die dann auf die drei Zeilen verteilt werden:
Die Checkbox in Zeile 1 bekommt den Wert 2, die in Zeile 2 bekommt den Wert 0 und die in Zeile 3 den Wert 1. Wenn der Benutzer das Formular speichert wird aus den drei Ziffern wieder ein String gebaut und in der Tabelle aktualisiert.
Soweit meine Idee. Etwas Besseres fällt mir momentan nicht ein. Kann man das so machen bzw. ist das sinnvoll das so umzusetzen oder wie handhabt man so etwas für gewöhnlich?
Ein großer Nachteil des Ganzen ist wohl, dass, sobald eine neue Zeile dazu kommt, der „Zahlen-String“ nicht mehr stimmt, weil die Zeilen-Abfolge sich ändert.
Grüße
Boris