Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 24
  1. #1
    drp
    drp ist offline
    Ontario
    Themenstarter
    Avatar von drp
    Registriert
    04.2011
    Beiträge
    342

    PHP-Session eingeloggt bleiben

    Hallo!
    Auf meiner Seite kann man sich registrieren und auch einloggen.
    Allerdings war es bis jetzt immer so, dass man nach ca. 3-4 Stunden Inaktivität ausgeloggt wurde (Session wurde automatisch beendet).
    Jetzt habe ich noch eine Funktion "Eingeloggt bleiben" eingebaut.
    Erst hatte ich es mit
    Code:
    if($_POST["stayloggedin"]) {
    	$lifetime = 2678400;
    }
    else {
    	$lifetime = 2000;
    }
    ini_set("session.cookie_lifetime", $lifetime);
    ini_set("session.gc_maxlifetime", 2678400);
    versucht, wobei man trotzdem nicht eingeloggt blieb.
    Ich hatte noch die Idee den Nutzernamen und eine md5-verschlüsselte Version des Passworts in einem Cookie zu speichern und dann beim Aufrufen, wenn man nicht eingeloggt ist automatisch einzuloggen. Jetzt weiß ich allerdings nicht ob das so wirklich "sicher" ist..
    Hat jemand eine andere Idee das zu realisieren? Wie machen das die anderen Seiten (beispielsweise Apfeltalk - hier kann man ja bei Eingeloggt bleiben einen Haken machen und dann ist man für mehrere Wochen eingeloggt)..

    Vielen Dank im Voraus
    Viele Grüße von DRP - Homepage
     MacBook Air 11,6" |  iPhone 3GS 8GB |  iPad 2 16GB weiß Wi-Fi |  Magic Mouse | PC

  2. #2
    Golden Noble Avatar von Bananenbieger
    Registriert
    08.2005
    Ort
    In der Cloud
    Beiträge
    21.434
    Wie immer gilt: Don't reinvent the wheel.

    Ist tausendfach gelöst, lässt sich z.B. mit flourish prima realisieren.

    Falls Du dennoch alles selbst machen willst: http://php.net/manual/de/function.se...kie-params.php
    Vorsicht! Dieser Beitrag kann Spuren von Ironie oder Sarkasmus enthalten.
    Ohne Konservierungsstoffe (lt. Gesetz). Ohne Farbstoffe. Ohne geschmacksverstärkende Zusatzstoffe.
    Deckt 2% des Richtwertes des täglichen Apfeltalkbedarfs basierend auf einem Karmalevel von 200 Pt.

  3. #3
    drp
    drp ist offline
    Ontario
    Themenstarter
    Avatar von drp
    Registriert
    04.2011
    Beiträge
    342
    Okay, ich habs jetzt selber gemacht und es funktioniert auch schon wunderbar! Vielen Dank erstmal!
    Nur dass die Session über alle Subdomains reicht funktioniert noch nicht. (Also mit dem .domain.de habe ich gemacht!)
    Viele Grüße von DRP - Homepage
     MacBook Air 11,6" |  iPhone 3GS 8GB |  iPad 2 16GB weiß Wi-Fi |  Magic Mouse | PC

  4. #4
    Golden Noble Avatar von Bananenbieger
    Registriert
    08.2005
    Ort
    In der Cloud
    Beiträge
    21.434
    Dann poste doch mal Deinen Code.
    Vorsicht! Dieser Beitrag kann Spuren von Ironie oder Sarkasmus enthalten.
    Ohne Konservierungsstoffe (lt. Gesetz). Ohne Farbstoffe. Ohne geschmacksverstärkende Zusatzstoffe.
    Deckt 2% des Richtwertes des täglichen Apfeltalkbedarfs basierend auf einem Karmalevel von 200 Pt.

  5. #5
    drp
    drp ist offline
    Ontario
    Themenstarter
    Avatar von drp
    Registriert
    04.2011
    Beiträge
    342
    Okay. Von der PHP-Datei zum Einloggen:
    Code:
    ini_set("session.use_cookies", "On");
    if($_POST["stayloggedin"]) {
    	$lifetime = 2678400;
    }
    else {
    	$lifetime = 2000;
    }
    ini_set("session.use_trans_sid", "1");
    session_set_cookie_params($lifetime, "/", ".drp-seiten.de");
    session_start();
    Viele Grüße von DRP - Homepage
     MacBook Air 11,6" |  iPhone 3GS 8GB |  iPad 2 16GB weiß Wi-Fi |  Magic Mouse | PC

  6. #6
    Golden Noble Avatar von Bananenbieger
    Registriert
    08.2005
    Ort
    In der Cloud
    Beiträge
    21.434
    Und Du bist sicher, dass die Sessions aller Subdomains auch die gleichen sind?

    Und gibt es einen Grund für "session.use_trans_sid" => 1 ?
    Vorsicht! Dieser Beitrag kann Spuren von Ironie oder Sarkasmus enthalten.
    Ohne Konservierungsstoffe (lt. Gesetz). Ohne Farbstoffe. Ohne geschmacksverstärkende Zusatzstoffe.
    Deckt 2% des Richtwertes des täglichen Apfeltalkbedarfs basierend auf einem Karmalevel von 200 Pt.

  7. #7
    drp
    drp ist offline
    Ontario
    Themenstarter
    Avatar von drp
    Registriert
    04.2011
    Beiträge
    342
    Das habe ich als Alternative gemacht, dass alle Link zu den Subdomains so aussehen:
    http://sub.Domain.de?PHP_SESSID=1234567890
    Was heißt dass die Sessions gleich sind??
    Viele Grüße von DRP - Homepage
     MacBook Air 11,6" |  iPhone 3GS 8GB |  iPad 2 16GB weiß Wi-Fi |  Magic Mouse | PC

  8. #8
    drp
    drp ist offline
    Ontario
    Themenstarter
    Avatar von drp
    Registriert
    04.2011
    Beiträge
    342
    Auch das eingeloggt bleiben funktioniert nicht
    Viele Grüße von DRP - Homepage
     MacBook Air 11,6" |  iPhone 3GS 8GB |  iPad 2 16GB weiß Wi-Fi |  Magic Mouse | PC

  9. #9
    drp
    drp ist offline
    Ontario
    Themenstarter
    Avatar von drp
    Registriert
    04.2011
    Beiträge
    342
    Woran könnte das denn liegen?
    Also der Code müsste fehlerfrei sein.
    Viele Grüße von DRP - Homepage
     MacBook Air 11,6" |  iPhone 3GS 8GB |  iPad 2 16GB weiß Wi-Fi |  Magic Mouse | PC

  10. #10
    Idared
    Registriert
    04.2011
    Beiträge
    25

    Cookie?

    Erstelle dir einfach einen Cookie, der einen Monat hält. Wenn der Nutzer auf die Checkbox "stay" klickt, wird ein einmonatiger Cookie angelegt, der ihn wieder einloggt.

    Code:
    if(isset($_POST['stay']) && $_POST['stay'] == 'yes') {
    setcookie('Stay', md5('P1kachoo') . $session['username'], time() + 30 * 86400); // Geheimes Schlüsselwort wählen!
    }
    In der Login.php

    Am Anfang jeder Datei dann:
    Code:
    if(isset($_COOKIE['stay']) && substr($_COOKIE['stay']) == md5('P1kachoo')) { //geheimes Kennwort, Lösung mit preg_Match ggf. besser
    session_start();
    // Variablen setzen
    // ...
    }
    So gesehen ist dein Vorschlag schon richtig gewesen, DRP. Mein Skript musst du vielleicht noch ein bisschen anpassen und den zweiten Teil erweitern. Ich hoffe, ich konnte dir helfen.

    dominik.html

Seite 1 von 3 123 LetzteLetzte

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •