사람들이 내 웹 사이트에서 너무 일찍 로그 아웃하지 않도록 내 로그인 세션을 더 오래 만들려고합니다. 예를 들어, 블로그 게시물을 만들고 php가 쿠키를 만료했기 때문에 제출할 때 잃어 버릴 수 있습니다.지속적인 PHP 로그인 세션 만들기
이상적으로 나는 그들이 로그 아웃되지 않는 2 시간 세션을 말하고 싶습니다. 페이지를로드 할 때마다 새로 고침됩니다 (이 코드 조각은 각 보안 페이지 헤더 앞에 있습니다)
이것은 내가 시도한 것이지만, 0으로 나누기가 있다고 말하는 setcookie()에 대한 오류가 발생합니까? 여기서 내가 뭘 잘못하고 있니?
//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, "/");
}
편집 : 이제 문제는 비표준 따옴표와 작은 따옴표를했다로 활동. 누구나이 코드를 복사하여 사용하면됩니다. 위의 코드가 이제 작동합니다!
그 코드를 복사하여 붙여 넣을 때 오류가 없으므로 다른 것이 있어야합니다. 나는 당신의 모든 따옴표/아포스트로피를 대체해야했지만, 그들은 정상적인 PHP 따옴표/아포스트로피가 아니기 때문에. –
정확한 오류 메시지를 알려주십시오. –
좋아, 그랬어 - 스 니펫을 복사 할 때 몰래 들어갈 수있는 따옴표와 아포스트로피가 있다는 것을 몰랐다! 감사! –