nitro: Cookies

Guten Tach.

ich habe ein Problem mit meinen Cookies...
undzwar ich habe eine seite mit login gebastelt... die seite ist mit tabellen aufgebaut (switch/include) ..
einloggen usw geht mit sessions.. nun will ich ein autologin bzw das passwort und nicknamen speichern.
Also mein Code sieht am anfang der index.php so aus....

<?php
session_start ();
setcookie("sessionpass",$userpass,time()+3600);
setcookie("sessionnick",$usernick,time()+3600);
?>

Den Cookie erstellt er und das passt alles... jedoch wenn ich auf logout gehe... folgender Code...

ob_start ();
session_start ();
session_unset ();
session_destroy ();
ob_end_flush ();

es liegt denke ich halt an der Session destroy...
das der cookie dann geleert wird.. ?? aber wie kann ich das umgehen das er das weiterhin beibehält?

  1. Moin!

    <?php
    session_start ();
    setcookie("sessionpass",$userpass,time()+3600);
    setcookie("sessionnick",$usernick,time()+3600);
    ?>

    du setzt hier cookies die nicht zur session gehören. session cookies werden wie folgt erstellt:

    $_SESSION["varname"] = "wert";

    Session Funktionen

    wenn du die sessionvariablen so erstellst, werden sie auch bei session_destroy(); gelöscht.

    session_destroy ();

    tschüssi
    ichen

    1. jau aber auch wenn ich das mit
      $_SESSION[user_nickname] oder $_SESSION[user_id]
      mache...
      sobald ich auslogge is der cookie weg... keine ahnung wie ich das umgehe

      1. Moin!

        sobald ich auslogge is der cookie weg... keine ahnung wie ich das umgehe

        warum willst du das er erhalten bleibt?

        tschüssi
        ichen

        1. weil wenn man sich ausloggt doch sonst der cookie halt futsch ist und beim nächsten aufruf der seite die logindaten auch nicht mehr automatisch da sind...
          sprich man alles wieder eingeben muss

          1. Moin!

            sprich man alles wieder eingeben muss

            dann versuche es so

            <?
            $daten = $_SESSION["wieauchimmer"];
            $daten2 = $_SESSION["wieauchimmer2"];
            session_unset();
            //usw...

            setcookie("Daten1",$daten,time()+60*60*24*30);
            //das lässt das cookie erst nach dreißig tagen verfallen.
            ?>

            lies dir unbedingt den abschnitt über des parameter expire in der funktion setcookie() durch.

            tschüssi
            ichen