Wolfgang: Session funktioniert nicht...

Hallo Leudde,

ich habe eine Website mit Login. Dabei sollen die Benutzerdaten in einer Session gespeichert werden. Es handelt sich dabei um drei Variablen.

in der index.php wird die session gestartet und die Variablen registriert.

Code: index.php

<?
session_save_path("./session_save");
@session_start();
session_register('id'); ID
session_register('auth');Benutzerrecht
session_register('lang');Sprache
include('login.php');
?>

Dann gehts weiter in der login.php. Hier werden die Session-Variablen mit werten belegt.

Code: login.php

<?
session_save_path("./session_save");
@session_start();
...
...
$_SESSION['id'] = $id;
$_SESSION['auth'] = $auth;
$_SESSION['lang'] = $lang;
header("Location: start.php");
...
...
?>

Dann wird mit start.php das Frameset aufgerufen.

in jeder folgenden Datei wird mit include() die Datei user_auth.php eingebunden:

Code: user_auth.php

<?
session_save_path("./session_save");
@session_start();
...
...
$auth = $_SESSION['auth'];
$id = $_SESSION['id'];
$lang = $_SESSION['lang'];
...
...
?>

In user_auth.php wird dann jedesmal der Benutzer überprüft, habe ich aus Gründen der übersichtlichkeit rausgelassen.

Zum Testen habe ich auf meinem PC php und Apache installiert. Sobald sich nun zwei Benutzer anmelden, wird die Session überschrieben. Also User 1 hat plötzlich die Angaben von User 2. Was habe ich falsch gemacht, bzw. verpeilt.

Danke für Eure Hilfe.

Viele Grüße Wolfgang

  1. Moin Wolfgang,

    session_save_path("./session_save");
    @session_start();

    @session_start(); muss immer als aller erstes im Script stehen,
    also noch vor session_save_path("./session_save");

    Gruß
    Mike

    --
    Murphy: "Wenn etwas schiefgehen kann, dann wird es auch schiefgehen."
    1. Servus Mike,

      habe es so gemacht. Funzt aber nach wie vor nicht. Hier mal ein Auszug aus meiner phpinfo():

      Directive                Local Value        Master Value

      session.auto_start          Off               Off
      session.cache_expire        180               180
      session.cache_limiter       nocache           nocache
      session.cookie_domain       no value          no value
      session.cookie_lifetime     0                 0
      session.cookie_path         /                 /
      session.cookie_secure       Off               Off
      session.entropy_file        no value          no value
      session.entropy_length      0                 0
      session.gc_maxlifetime      1440              1440
      session.gc_probability      1                 1
      session.name                PHPSESSID         PHPSESSID
      session.referer_check       no value          no value
      session.save_handler        files             files
      session.save_path           /tmp              /tmp
      session.serialize_handler   php               php
      session.use_cookies         Off               Off
      session.use_trans_sid       1                 1

      Vielleicht erkennst Du da was, was so nicht passt.

      Danke schon Mal.

      Gruß Wolfgang