Twórz trwałe sesje cookie logowania php

Staram się, aby moje sesje logowania trwały dłużej, aby ludzie nie byli wylogowywani z mojej witryny zbyt wcześnie. Na przykład tworzenie posta na blogu i utrata go, gdy wysyłają, ponieważ php wygasł ich plik cookie.

Idealnie chciałbym dać im 2-godzinną sesję, w której nie zostaną wylogowani, co będzie odświeżane za każdym razem, gdy załadują stronę (poniższy fragment kodu znajduje się przed nagłówkiem każdej bezpiecznej strony)

To jest to, co próbuję, ale pojawia się błąd dla setcookie () mówiącego, że był podział przez zero? Co ja tu robię źle?

//How long sessions last
$hours = 2;

// php.ini setting required for session timeout.
ini_set('session.gc_maxlifetime',$hours*60*60);
ini_set('session.gc_probability',1);
ini_set('session.gc_divisor',1);

//Set the session parameters and start session
$sessionCookieExpireTime=$hours*60*60;
session_set_cookie_params($sessionCookieExpireTime);
session_start();

// Reset the expiration time upon page load
if (isset($_COOKIE[session_name()]))
{
    setcookie(session_name(), $_COOKIE[session_name()], time() + $sessionCookieExpireTime, "/");
}

EDYTUJ: Teraz działa, ponieważ problemem były niestandardowe cytaty i apostrofy. Na wypadek gdyby ktoś skopiował ten kod i go użył. Powyższy kod działa teraz dzięki!

questionAnswers(1)

yourAnswerToTheQuestion