DanielE: Session und Zähler

Hallo Leute,

kann mir das mal jemand erklären? Ich starte meinen Browser und damit die Session. Aktualisiere ich den Browser mit F5 dann gibt mein echo $zaehler brav eine 2 aus usw...

Klicke ich aber in der Navi auf einen Link, gehe in eine andere Datei
und komme zurück bleibt mein zaehler auf 1. Wiederhole ich das ganze
kommt die 2, 3, 4 usw.

Wie kommt denn das? Warum wird die 1 zweimal ausgegeben und bei einem Reload im Browser nicht?

Danke für jeden Tipp.
Gruß Daniel

<?php
session_start();

if (!session_is_registered('zaehler'))
 {
    session_register('zaehler');
    $zaehler = 1;
 }
else
 {
    $zaehler++;
 }
?>

<p>
<?php echo $zaehler; ?>
</p>

  1. Hallo,

    Wie kommt denn das? Warum wird die 1 zweimal ausgegeben und bei einem Reload im Browser nicht?

    beim Wechsel auf die andere Seite geht offenbar die Session verloren.
    Das kann mehrere Gründe haben - schau am besten mal hier: http://de3.php.net/manual/en/ref.session.php#session.idpassing.

    Ciao,
    Andreas

    --
    "Das Corporate Design für das Internet sieht eine Reihe von Grafikelementen vor, die die Optik der Webseite visuell und funktionell beeinflussen." - (Zitat aus dem "Styleguide Corporate Design"  eines großen Konzerns...)
  2. Moin!

    Dein Session-Code ist veraltet.

    <?php
    session_start();

    if (!session_is_registered('zaehler'))
    {
        session_register('zaehler');
        $zaehler = 1;

    Verwende die zwei Funktionen session_register() sowie session_is_registered() nicht mehr. PHP verwendet das Array $_SESSION, um alle Sessionvariablen zu verwalten.

    Nutze isset($_SESSION['zaehler']) statt session_is_registered() und nutze $_SESSION['zaehler'] direkt als Sessionvariable (kein session_register() mehr).

    - Sven Rautenberg

    --
    My sssignature, my preciousssss!