PHP Handbuch
Zurück |  | Weiter

# session_start

(PHP 4 , PHP 5)

session_start -- Initialisiert eine Session

## Beschreibung

bool session_start ( void )

session_start() erzeugt eine Session oder nimmt die aktuelle wieder auf, die auf der Session-ID basiert, die mit einer Anfrage, z.B. durch GET, POST oder ein Cookie, übermittelt wurde.

Diese Funktion gibt immer `TRUE` zurück.

> Anmerkung: Bei Verwendung Cookie-basierter Sessions müssen Sie session_start() aufrufen, bevor irgend etwas an den Browser geschickt wird.

Beispiel 1. Ein Session-Beispiel: `seite1.php`

`<?php // seite1.php session_start(); echo 'Willkommen auf Seite #1'; $_SESSION['farbe'] = 'grün'; $_SESSION['tier'] = 'Spinne'; $_SESSION['zeit'] = time(); // Funktioniert, falls das Session-Cookie akzeptiert wurde echo '<br /><a href="seite2.php">Seite 2</a>'; // Oder die Session-ID mit übergeben, für den Fall, dass sie benötigt wird echo '<br /><a href="seite2.php?' . SID . '">Seite 2</a>'; ?>`

Nach dem Aufruf von `seite1.php` enthält automatisch auch die zweite Seite, `seite2.php`, die Session-Daten. Lesen Sie Session Funktionen, um weitere Informationen über die Übermittlung der Session-ID zu erhalten. Dort wird zum Beispiel erklärt, worum es sich bei der Konstanten `SID` handelt.

Beispiel 2. Ein Session-Beispiel: `seite2.php`

`<?php // seite2.php session_start(); echo 'Willkommen auf Seite #2<br />'; echo $_SESSION['farbe']; // grün echo $_SESSION['tier']; // Spinne echo date('d.m.Y H:i:s', $_SESSION['zeit']); // Sie können auch hier, genauso wie bei seite1.php, SID verwenden echo '<br /><a href="seite1.php">Seite 1</a>'; ?>`

Wenn Sie eine benannte Session verwenden wollen, müssen Sie session_name() aufrufen, bevor Sie session_start() aufrufen.

Wenn trans-sid aktiviert ist, registriert session_start() die interne Ausgaberoutine für das Umschreiben von URLs. Verwendet ein Benutzer ob_gzhandler oder ähnliches mit ob_start(), ist die Reihenfolge der Augaberoutine wichtig für eine korrekte Ausgabe. Zum Beispiel muss der Benutzer ob_gzhandler vor Beginn der Session registrieren.

> Anmerkung: Die Verwendung von zlib.output_compression ist ob_gzhandler() vorzuziehen.

> Anmerkung: Ab PHP 4.3.3 resultiert der Aufruf von session_start(), nachdem die Session schon gestartet wurde, in einem Fehler der Stufe `E_NOTICE`. Der zweite Session-Start wird in diesem Fall einfach ignoriert.

Siehe auch: $_SESSION, session.auto_start und session_id().

Zurück | Zum Anfang | Weiter
session_set_save_handler | Nach oben | session_unregister