Jörg Reinholz: Sessionbasiertes Login - Ablauf der Session

Beitrag lesen

Universell einsetzen?

Ja.

Steh ich denn momentan ganz auf dem Schlauch?

Wenn Du es so ausdrücken willst...

Also, die Daten aus POST, GET und SELF speichere ich eh ab, zwar nicht in einer Session, sondern in einer Log-Tabelle, aber davon mal abgesehen.

Das wirst Du dann erst mal ändern müssen...

Ich weiß nicht, wie geartet soe ine Entwicklung aussehen soll, daß ich sie später per require_once() einbauen könnte?

Kannst Du mir ein kurzes Beispiel für ein Input- Text, Checkbox, Radio und Dropdown geben?

Völlig irrelevent. Die eigentliche Verarbeitung der Daten bleibt völlig gleich, also genau so wie bisher!

Ich wüßte nicht, wie ich das z.b. so universell formulieren könnte, so das es später auf alle Dropdowns meiner z.b. 50 Formulare passt.

Wie gesagt: Das ist _völlig_ irrelevant, hier bleibt alles GENAU wie zuvor.

<script lang=phantasie>

Altes Skript:
-------------------
starte_session();
pruefe_anmeldung();
verarbeite_Daten();
-------------------

Dazu:
-----------------------------------------------------
if not pruefe_anmeldung();
-- kopiere Post-Daten nach session[post]
-- kopiere GET-Daten nach  session[get]
-- schreibe Skript-name nach session[self]
-- zeige LOGIN()
-- exit
else
-- if not erwartete Daten in Post oder GET
---- kopiere Daten aus session[post] nach POST-Daten
---- lösche session[post]
---- kopiere Daten aus session[get] nach GET-Daten
---- lösche session[get]
---- lösche session[self]
-- end if
end if
-----------------------------------------------------

Zusammen:
----------------------------------------------------
starte_session();
---include------------------------------------------
if not pruefe_anmeldung();
-- kopiere Post-Daten nach session[post]
-- kopiere GET-Daten nach  session[get]
-- schreibe Skript-name nach session[self]
-- zeige LOGIN ()
-- exit
else
-- if not erwartete Daten in Post oder GET
---- kopiere Daten aus session[post] nach POST-Daten
---- lösche session[post]
---- kopiere Daten aus session[get] nach GET-Daten
---- lösche session[get]
---- lösche session[self]
-- end if
end if
--- end include-------------------------------------
verarbeite_Daten(); // GENAU WIE BISHER
----------------------------------------------------

Anpassung des Login-Skriptes:

// bisher:
teste anmeldung()
// neu dazu:
if session[self]
-- leite zu http://server/skriptname aus session[self]
-- exit
end if
// bleibt:
// was auch immer bisher hier geschah

Jörg Reinholz