setcookie('navn', 'værdi', time()+1234) <-- dette er en cookie, der udløber om 1234 sekunder. det kaldes en normal cookie.
setcookie('navn', 'værdi') <-- dette er en cookie, der udløber når browsersessionen udløber (det vil sige når browseren lukkes). det kaldes en session cookie. Det er sådan en cookie php's session system bruger.
Eksempel på hjemmelavet session system:
//nogle funktionsnavne kan være forkerte i eksemplet
my_session_start(){ // skal kaldes i starten af hvert script
global $_MY_SESSION;
// kode der rydder op i gamle sessions. Det er denne der beslutter, hvor lang tid der skal gå, inden sessionen fjernes fra serveren.
if(isset($_COOKIE['SESSID']) && file_exists("sessions_data_mappe/$_COOKIE[SESSID].txt")){
$_MY_SESSION = unserialize(file_get_contents());
}
else{
//kode der putter en tilfældig tekst ind i $sessid
setcookie('SESSID', $sessid);
$_COOKIE['SESSID'] = $sessid; // bare så vi kan huske det
}
}
my_session_save(){ //skal kaldes i slutningen af hvert script, det skal man ikke i php's indbyggede sessions system
global $_MY_SESSION;
file_put_contents("sessions_data_mappe/$_COOKIE[SESSID].txt", serialize($_MY_SESSION));
}