Session-Managment kapieren
mabu
- php
Hi Leute!
Was ist die beste Möglichkeit um das Session-Managment zu kapieren???
Ich hab mir mal das PHP-Manual angeschaut und probiert das Beispiel 5 auf http://www.php.net/manual/de/ref.session.php zu probieren, aber irgendwie funzt das net mal, wenn ich das einfach reinkopiere... Ich habs auf meinem eigenen Rechner probiert (Hab PHPTriad mit Apache installiert)
Hab nämlich mal gehört, dass das ganze recht kompliziert sein soll...
mfg,
mabu
Hallo Mabu,
wenn man damit beginnt, ist es wirklich schwierig zu verstehen. Das liegt wohl daran, dass es aus verschiedenen Komponenten besteht, die automatisch ineinandergreifen und jede für sich diverse Sonderregeln hat.
Wie man anfängt?
1. Server bereitstellen, der Sessionmanagement unterstützt.
Die Voreinstellungen der "out-of-the-Box" Version sind aber
meistens richtig
2. Client bereitstellen, der Cookies nach Rückfrage annimmt
3. Klitzekleine Testscripte schreiben:
-------------------------------------------
Script1.php:
<?php ### script1.php ###
session_start();
$_SESSION["ersteVariable"] = "hurra";
$_SESSION["zweiteVariable"] = "ich kanns";
?>
<!-- hier der übliche HTML-Kopf -->
<body>
<a href="script2.php">Zum Script 2</a><br />
</body>
</html>
--------------------------------------------
Script 2:
<?php ### script2 ###
session_start();
?>
<!-- hier der übliche HTML-Kopf -->
<body>
<?
print_r($_SESSION);
?>
</body>
</html>
---------------------------------------------
Wenn das so klappt, dann weiterhin viel Spaß. Spiel mal mit den Cookies (Annahame verweigern), schau die immer den ausgelieferten HTML-Code im Browser an. Versuche mal eine Kette aufzubauen. Bau mal ein Formular ein und lehne den "Session-Cookie" ab.
Wenn noch Fragen kommen, und da bin ich sicher, dann frag
Grüße
Tom
Jallo mabu,
Was ist die beste Möglichkeit um das Session-Managment zu kapieren???
der Weg, die PHP-Doku zu lesen ist schon ein sehr guter Einstieg.
Ich hab mir mal das PHP-Manual angeschaut und probiert das Beispiel 5 auf http://www.php.net/manual/de/ref.session.php zu probieren, aber irgendwie funzt das net mal, wenn ich das einfach reinkopiere... Ich habs auf meinem eigenen Rechner probiert (Hab PHPTriad mit Apache installiert)
Das Beispiel 5 funktioniert auch nicht einfach so. Soweit ich sehen kann, wurde dort keine Session gestartet. Das Beispiel 1 sollte eigentlich funktionieren:
<?php
session_start();
// Verwenden Sie bei PHP 4.0.6 oder niedriger $HTTP_SESSION_VARS
if (!isset($_SESSION['zaehler'])) {
$_SESSION['zaehler'] = 0;
} else {
$_SESSION['zaehler']++;
}
?>
Hab nämlich mal gehört, dass das ganze recht kompliziert sein soll...
Das ist Unsinn. Session-Management mit PHP ist eins der einfachsten Dinge mit PHP. Es gibt eigentlich nur zwei Befehle die man braucht: session_start() und session_register(). Mit session_start() wird die Session initialisiert und mit session_register() sagst Du, welche Variable in der Session abgelegt werden sollen. Evtl. brauchst Du noch session_destroy() um die Session explizit zu löschen.
viele Grüße
Achim Schrepfer