Hi Leute
Ist mein erstes Tutorial, hoffe mal es wird verständlich. Ich schreibe euch über Sessions in PHP, wie ihr diese initialisiert und benutzt.
Sinn einer Session:
Sessions werden häufig bei Seiten benutzt, wo sich ein User einloggen muss. In Sessions kann man Variablen speichern die dann auf dem Server gespeichert sind und sozusagen global sind.
Eine Session läuft spätestens mit Schließen des Browserfensters ab. Man kann natürlich auch Cookies setzen, so dass die Sessions erneut geladen werden.
In einer Session kannst du z.B. den User ID eines Users speichern, die dazugehörigen Daten und evtl das Passwort, um so immer Vergleiche mit den eingegebenen Daten zu machen oder wenn du andere Daten des Users benötigst brauchst du nur auf die Sessionvariable mit dem user id zugreifen.
Verwendung von Sessions:
Um eine Session zu initialiesieren musst du vor jedem HTML Code folgende Zeile schreiben:
PHP-Code:
<?php session_start(); ?>
Damit werden im nachfolgedem Skript alle Session Variablen zugänglich.
Session Variablen zu erstellen und auszulesen geht am einfachstem über den Session Array. Es gibt auch eine andere Möglichkeit, die aber schon veraltet und kompliziert ist.
Um eine Variable zu setzen oder auszulesen nimmst du folgende Codes:
PHP-Code:
<?php
$_SESSION['variablenname'] = 'neuer wert';
if ($_SESSION['eingeloggt'] == 1) echo 'User ist drin';?>
Auf diese Variablen kannst du nun von jeder Seite, bei der du session_start(); an den Anfang schreibst zugreifen, so lange das Browserfenster nicht geschlossen wurde.
Sollen alle Sessionvariablen frühzeitig gelöscht werden nutze folgende Funktion:
PHP-Code:
<?php session_destroy();?>
Der Name ist wohl selbsterklärend, ne?
Zum Login Skript:
Ihr habt ein Formular welches zwei Textfelder names username und password hat. Außerdem ist ein unsichtbares Feld zur Uberprüfung mit dem Titel login und dem Wert 1 vorhanden.
Diese werden über action="post" an eine php Seite übergeben. Hier der Code der PHP Seite:
PHP-Code:
<?php session_start();
if ($_POST['login'] == 1) {
if (($_POST['username'] == 'Admin') AND ($_POST['password'] == 'geheim')) {
$_SESSION['username'] = $_POST['username'];
$_SESSION['password'] = $_POST['password'];
echo 'Willkommen Admin
';
echo 'Viel Spaß auf deiner Seite';
...
}
}
?>
Auf der nächsten Seite
prüft ihr mit folgendem Skript ob der Admin auch eingeloggt ist:
PHP-Code:
<?php session_start();
if ($_SESSION['username'] == 'Admin') {
echo 'Mitglieder bearbeiten:
'
echo ' löschen - bearbeiten - hinzufügen';
...
}
?>
Hoffe euch geholfen zu haben