2016-06-14 2 views
0

Ich möchte ein 5-seitiges Antragsformular mit PHP erstellen, wo ein Benutzer etwa 50 Dateneinträge (Name, Alter, andere Details ...) eingeben muss, die in der Hauptdatenbank gespeichert werden sollen, wenn das Formular ausgefüllt ist.Mehrseitiges Antragsformular mit Sitzungen oder Datenbank?

Ich frage mich, welche der folgenden Ansätze besser abschneidet:

A) Nach einer Seite abgeschlossen, $ _SESSION Array alle Einträge in einem großen speichern. Am Ende speichern Sie alle Einträge aus der Array $ _SESSION in der Hauptdatenbank

oder

B) Nach einer Seite abgeschlossen, alle Einträge in einer kleinen Datenbank speichern. Speichern Sie im Array $ _SESSION nur die ID der kleinen Datenbank und die Seite, auf der sich der Benutzer gerade befindet. Am Ende speichern Sie alle Einträge aus der Datenbank $ _small in der Hauptdatenbank.

Ich bin mir nicht sicher, ob es zu Problemen bei der Speicherung von etwa 50 Einträge im $ _SESSION-Array führt, besonders wenn viele Benutzer das Formular verwenden. Daher dachte ich, dass B besser sein könnte. Aber wenn nicht, würde ich nicht den zusätzlichen Aufwand betreiben, eine zusätzliche lokale Datenbank zu unterhalten, wenn es keinen Unterschied in der Leistung der Website gibt. Gibt es vielleicht noch andere Nachteile, die man beachten sollte, wenn man A) oder B) verwendet?

Antwort

1

Zunächst einmal gibt es keine großen und kleinen Datenbanken, es gibt nur große und kleine Datenbank Tabellen. Es ist nicht notwendig, separate Schemas für jede Seite zu haben, daher sollten Sie im zweiten Ansatz mehrere Tabellen und nicht mehrere Datenbanken haben.

Egal, der erste Ansatz ist eigentlich besser, denn wenn der Benutzer bricht oder nie auf allen fünf Seiten folgt, werden Sie mit nutzlosen Informationen in Ihren Tabellen verlassen werden. Speichern Sie die Einträge in $_SESSION ist auch schneller, da Sie die Datenbank nicht nach jedem Formular abfragen müssen, nur die letzte. Der einzige Nachteil des zweiten Ansatzes besteht darin, dass, wenn ein Benutzer Ihre Seite verlässt und später zurückkehrt, sie alles von Grund auf neu eingeben müssen, während sie bei der ersten Annäherung von dort weitermachen können (vorausgesetzt, Sie haben eine Möglichkeit, dem zu erzählen) Benutzer mit etwas wie eine eindeutige ID oder E-Mail). Der erste Ansatz ist der beste.

+0

Ja Entschuldigung, ich habe Tabellen oc. Aber dein letzter Sentence sollte ** immer noch der erste Ansatz sein ** ... oder? – Adam

+0

@Adam ja sicher, mein Schlechter habe ich behoben, ich meine ersten Ansatz. Sitzungen sind der Weg zu gehen – dimlucas

Verwandte Themen