Michael Schröpl: Transaktionsbasierte Erzeugung eines komplexen Datenobjekts

Beitrag lesen

Hi Alex,

Nun ist das Problem: Der Use gibt schon Empfänger, Betreff, Text... ein und will nun noch ein Attachment hinzufügen. Das er nun dieses Formular ausfüllt und abschickt, sind die anderen Daten weg.
Ich kann mir selber eigentlich garnicht vorstellen, wie ich das realisierne könnte.

einzelne HTTP-Requests sind gedächtnislos. Also scheinst Du ein Gedächtnis realisieren zu müssen.

Wenn Du mit PHP arbeitest, dann sollten Sessions das sein, was Dir weiter hilft: Unter der Session-ID kannst Du die bereits abgesendeten Informationen auf dem Server temporär speichern und bei weiteren Übertragungen ergänzen.

Was Du dann in Deinem Dialog-Konzept zusätzlich brauchst, das ist ein Button "Mail absenden", welche auf dem Server dann aus allen hochgeladenen Informationen die Mail zusammenbastelt.

Auf diese Weise ist es egal, in welcher Reihenfolge die Bestandteile auf den Server wandern (jedes Teil könnte ja das letzte sein) - und wie viele Informationen es sind.
Du mußt Dir lediglich eine (hinreichend flexible) Datenstruktur auf dem Server bauen und diese mit der Identität des Client, hier also der Session-ID, eidentig adressieren, um auf diese Weise mehrere HTTP-Requests ein gemeinsames Datenobjekt bauen zu lassen.
Und diese Datenstruktur nach dem Absenden der Mail natürlich wieder abbauen.

Achtung: Falls ein Anwender diesen Erstellungsprozeß auf halbem Weg abbricht, liegen auf dem Server "Trümmer" der angefangenen Mails herum.
Es wäre also ratsam, solche Daten zusätzlich periodisch (cron?) nach einem entsprechenden Zeitintervall (Änderungsdarum > 1 Tag in der Vergangenheit?) zu vernichten.

Viele Grüße
      Michael

--
T'Pol: I apologize if I acted inappropriately.
V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.