diff options
author | Andrew Dolgov <[email protected]> | 2018-10-15 15:59:16 +0300 |
---|---|---|
committer | Andrew Dolgov <[email protected]> | 2018-10-15 15:59:16 +0300 |
commit | 2a029c40505796c19a7fd4f86e140da2e5c548a4 (patch) | |
tree | b0e987e3de7cd561917a4d42be7fe31e6a8abc26 | |
parent | b5b914878733d9c1a7f95f833dcda15cad9770d9 (diff) |
add some session handling-related improvements
-rw-r--r-- | login.php | 8 | ||||
-rw-r--r-- | logout.php | 6 | ||||
-rw-r--r-- | sessions.php | 4 |
3 files changed, 17 insertions, 1 deletions
@@ -19,6 +19,14 @@ if ($line = $sth->fetch()) { require_once "sessions.php"; + if (session_status() != PHP_SESSION_NONE) { + session_destroy(); + session_commit(); + } + + session_start(); + session_regenerate_id(true); + $_SESSION["owner"] = $user; header("Location: index.php"); } else { @@ -4,6 +4,12 @@ session_destroy(); + if (isset($_COOKIE[session_name()])) { + setcookie(session_name(), '', time()-42000, '/'); + } + + session_commit(); + header("Location: login.php"); ?> diff --git a/sessions.php b/sessions.php index 3735add..bc88180 100644 --- a/sessions.php +++ b/sessions.php @@ -19,5 +19,7 @@ register_shutdown_function('session_write_close'); - session_start(); + if (isset($_COOKIE[session_name()])) { + session_start(); + } ?> |