PHP gevorderde |
|
neen, dat bedoel ik niet. Je kan zelf de naam van de session id bepalen. Maak dus voor elke user een uniek session id aan en zet deze in de database. Je kan als volgd doen: doe een test of cookie: testcookie bestaat, zoniet maak aan. in je inlog syteem doe je terug een test op het bestaan van diezelfde cookie. indien die niet bestaat staan de cookies dus af en ga je de PHPSESSID doorgeven met de url.
voorbeeld van een soortgelijke code: opgelet is van oud inlog systeem niet echt veilig, wordt te veel opgeslagen in de cookie maar kan je wel het princiepe zien.
http://www.plaatscode.be/5969/
ga die code eens na, als de cookies af staan krijg je een url met de sessid meegegeven.
<?php
/* nagaan of de gebruiker zijn browser cookies aanvaard
testen of eerder aangemaakte cookie 'testcookie' aanwezig is.
*/
if (isset($_COOKIE['testcookie'])) { // cookie aanwezig, url zonder SESSID instellen
$_SESSION['url'] = $_SERVER['PHP_SELF'];
$_SESSION['sid'] = "";
} else { // cookie NIET aanwezig, url MET doorgeven SESSID instellen
$_SESSION['sid'] = htmlspecialchars(sid);
$_SESSION['url'] = $_SERVER['PHP_SELF'] . "?" . htmlspecialchars(sid);
setrawcookie("testcookie", "test", time()+3600*24*365*30);
}
// daarna krijg je ergens in je script
if (isset($_COOKIE[$cookie_name])) {
$cookiedata = explode("/", $_COOKIE[$cookie_name]);
// verder script zie plaatscode
} else {
}
?>
<?php /* nagaan of de gebruiker zijn browser cookies aanvaard testen of eerder aangemaakte cookie 'testcookie' aanwezig is. */ if (isset($_COOKIE['testcookie'])) { // cookie aanwezig, url zonder SESSID instellen $_SESSION['url'] = $_SERVER['PHP_SELF']; $_SESSION['sid'] = ""; } else { // cookie NIET aanwezig, url MET doorgeven SESSID instellen setrawcookie ("testcookie", "test", time()+3600*24*365*30);} // daarna krijg je ergens in je script if (isset($_COOKIE[$cookie_name])) { $cookiedata = explode("/", $_COOKIE[$cookie_name]); // verder script zie plaatscode } else { } ?>
redenatie achter de denkwijze is getest en werkt!! Enkel is het script op plaatscode ONVEILIG, is veranderd naar enkel uniek session id in de Cookie en Sessie maar die code geef ik niet vrij.
:D |