In my project I need set separate ways to set session time-live: 1) if user set 'remember me' -> information write into cookie -> if cookie variables available set session time-live non set (as long as possible). When user reload page information from the cookie writes into session variables. If user close browser then open browser again and load site -> information from the cookie restart session (if cookie information available). 2) if user not set 'remember me' session must expire from 24 ours (1 day).
session_set_cookie_params(3600);
session_start();
include ("blocks/bd.php");
if (isset($_COOKIE['passwordCode'])) {
$passwordCode = $_COOKIE['passwordCode'];
$login = $_COOKIE['login'];
$personalInfo = mysql_query("SELECT * FROM users WHERE password='$passwordCode' AND login='$login'", $db);
$personalInfoData = mysql_fetch_array($personalInfo);
$_SESSION['password'] = $personalInfoData['password'];
$_SESSION['login'] = $personalInfoData['login'];
$_SESSION['userName'] = $personalInfoData['userName'];
$_SESSION['phone'] = $personalInfoData['phone'];
$_SESSION['email'] = $personalInfoData['email'];
$_SESSION['id'] = $personalInfoData['id'];
$_SESSION['role'] = $personalInfoData['role'];
$_SESSION['companyRelation'] = $personalInfoData['companyRelation'];
}
if (isset($_SESSION['login']) && isset($_SESSION['password'])) {
$personalInfo = mysql_query("SELECT * FROM users WHERE password='$_SESSION[password]' AND login='$_SESSION[login]'", $db);
$personalInfoData = mysql_fetch_array($personalInfo);
}
With this code session set time live not working correct.