Fragebogen: Wann/Wie oft Ergebnisse in die Datenbank schreiben

zerafin

im Ruhestand
ID: 36455
L
20 April 2006
2.308
124
Huhu zusammen,
ich beschäftige mich gerade mit einem kleinen Fragebogen in php. Nun bin ich mir nicht sicher wann bzw. wie oft ich die Ergebnisse in die Datenbank schreiben sollte.

Zum Aufbau des Fragebogens:
1. Teil - Fragen zur Person (1 Seite)
2. Teil - Inhalt des Fragebogens (ca. 10 Seiten)

Diese Einteilung muss sein, es sind also 11 Seitenreloads (wenn man auf Ajax verzichtet, was ich gerne tun möchte).

Möglichkeit a) Alles in der Session speichern und erst am Ende in die Datenbank schreiben.

Vorteil: Ich habe nur vollständige Datensätze.
Nachteil: Wenn jemand den Fragebogen abbricht, muss er später wieder neu anfangen.

Möglichkeit b) Nach jeder Seite die Ergebnisse in die Datenbank schreiben.

Vorteil: Fragebogen kann jederzeit unterbrochen werden. (Wenn der Besucher Cookies zur Identifizierung zulässt)
Nachteil: Viele Datenbankzugriffe je Besucher.

Mir ist bewusst, dass diese Frage nicht wirklich kritisch ist. Es geht wohl auf beiden Wegen. Aber mich interessiert eure Meinung. Hab ich Vorteile/Nachteile übersehen?

Danke für die Hilfe!

Gruß, Zera
 
zerafin schrieb:
Aber mich interessiert eure Meinung.
Ich würde entscheiden, jenachdem, was das für ein Fragebogen ist.

Kann ich damit rechnen, dass Leute den freiwillig ausfüllen (Community-Umfrage, Paid4Umfrage, ...), entscheide ich mich für die Sessions. Wer abbricht, muss halt nochmal anfangen, sein Pech.
Oder freue ich mich über jedes kleine Bit von Daten, dann schreib ich so oft wie möglich in die Datenbank.

Hab ich keine Ahnung, ob eher ersteres oder zweiteres zutrifft, würd ich persönlich die Sessions nehmen und nur am Ende alles in die Datenbank schreiben.
 
zerafin schrieb:
Nachteil: Viele Datenbankzugriffe je Besucher.
Naja, 11 Datenbankzugriffe würde ich nicht unbedingt als "viel" bezeichnen, so schwächlich ist MySQL nämlich auch wieder nicht ;)

Ich würde in den meisten Fällen trotzdem eher Sessions verwenden, außer eine spätere Wiederaufnahme wäre zu wichtig, dann natürlich DB-Speicherung.
 
wenn die user eh angemeldet sind dann einfach jedes ergebniss mit der userid in die db speichern damit kann der user immer mal bissle was machen.

wenn man net angemeldet ist und cookies funzen würde ich es in cookies speichern und erst am ende in die db speichern
 
Huhu zusammen,

habe mich für die Sessions entschieden und der Fragebogen klappt prima. :)

Danke für alle Anworten!

Gruß, Zera