Not logged in. · Lost password · Register
Forum: PHP & Datenbanken Tutorials RSS
[PHP] Sesssions
Avatar
Janek (Administrator) #1
User title: Admin
Member since Aug 2006 · 125 posts · Location: Potsdam
Group memberships: Administratoren, Cehmes-Entwickler, Mitglieder
Show profile · Link to this post
Subject: [PHP] Sesssions
Dieses Tutorial wurde von nemo verfasst!

So, ich werde euch etwas über Sessions erzählen ;)

Am anfang eines jeden Script muss die Session gestartet werden. Dies geschieht, bevor irgenteine Ausgabe erfolgt ist, weil es sonst hässliche Fehler gibt!
Dies geschieht mit

Aber manchmal gab es schon eine Session, bevor diese seite aufgerufen wurde, und man möchte auf die Session Variablen von der vorherigen Seite zugreifen. Deswegen muss in diesem Falle
vor session_start() aufgerufen werden.

Session Variablen sind Super Globale Variablen, d.h. Sie sind, wenn register_globals=on ist, direkt ansprechbar ($foo), und wenn register_globals=off sind mit $_SESSION['foo'].
Die zweite Variante läuft aber auf on und off und ist sicher!

Session Variablen werden wie jede normale Variable festglegt, beispiel:

  1. $_SESSION['foo'] = 'bla';

Wenn man jetzt von Seite 1 auf Seite 2 verlinkt, und Seite 2 aufruft, kann man diese Variable direkt ausgeben lassen, und man hat keine hässliche lange URI.

  1. echo $_SESSION['foo']

Ich werde später auch noch ein kleines Beispiel, anhand eines Loginsystems machen, habe aber jetzt keine Zeit.
>> PHP4You
>> Against ICQ
This post was edited 3 times, last on 2006-08-06, 23:54 by Janek.
johnpatcher #2
Member since Aug 2006 · 13 posts
Group memberships: Cehmes-Entwickler, Mitglieder
Show profile · Link to this post
Aber manchmal gab es schon eine Session, bevor diese seite aufgerufen wurde, und man möchte auf die Session Variablen von der vorherigen Seite zugreifen. Deswegen muss in diesem Falle
Das ist Blödsinn ! Man muss so oder so, immer ein session_start() am Anfang der Datei haben ! session_id() braucht man i.d.R. gar nicht.

Session Variablen sind Super Globale Variablen, d.h. Sie sind, wenn register_globals=on ist, direkt ansprechbar ($foo), und wenn register_globals=off sind mit $_SESSION['foo'].

Die zweite Variante läuft aber auf on und off und ist sicher!
Auch das stimmt nciht so ganz. Superglobal heißt, dass sie überall (auch in Funktionen) verfügbar sind. Außerdem sollte man immer für register_globals = off programmieren !
Close Smaller – Larger + Reply to this post:
Verification code: VeriCode Please note the verification code from the picture into the text field next to it.
Smileys: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Special characters:
Go to forum
This board is powered by the Unclassified NewsBoard software, 20090606-dev, © 2003-8 by Yves Goergen
Current time: 2012-02-05, 19:27:02 (UTC +01:00)