diff options
author | Andrew Dolgov <[email protected]> | 2017-11-19 13:03:36 +0300 |
---|---|---|
committer | Andrew Dolgov <[email protected]> | 2017-11-19 13:03:36 +0300 |
commit | dfee22901d7c5defc61ef16e831d7c4a8f05ffd1 (patch) | |
tree | 19c70fcf048284decccfa9388e374047b04b14d4 /sessions.php | |
parent | 41e97ceb2c0e7b36ebb273707f12d2d940c87085 (diff) |
* use PDO::sqlite
* remove database-backed sessions (too slow for sqlite)
Diffstat (limited to 'sessions.php')
-rw-r--r-- | sessions.php | 51 |
1 files changed, 1 insertions, 50 deletions
diff --git a/sessions.php b/sessions.php index 82a90c2..3735add 100644 --- a/sessions.php +++ b/sessions.php @@ -15,56 +15,7 @@ session_set_cookie_params(SESSION_LIFETIME); - function s_open ($s, $n) { - return true; - } - - function s_read ($id){ - $res = Db::get()->query("SELECT data FROM epube_sessions WHERE id='$id'"); - - if ($line = $res->fetchArray(SQLITE3_ASSOC)) { - return base64_decode($line["data"]); - } else { - $expire = time() + SESSION_LIFETIME; - - Db::get()->query("INSERT INTO epube_sessions (id, data, expire) - VALUES ('$id', '', '$expire')"); - } - - } - - function s_write ($id, $data) { - $data = base64_encode($data); - $expire = time() + SESSION_LIFETIME; - - Db::get()->query("UPDATE epube_sessions SET data = '$data', expire = '$expire' WHERE id = '$id'"); - - return true; - } - - function s_close () { - return true; - } - - function s_destroy($id) { - Db::get()->query("DELETE FROM epube_sessions WHERE id = '$id'"); - - return true; - } - - function s_gc ($expire) { - Db::get()->query("DELETE FROM epube_sessions WHERE expire < " . time()); - - return true; - } - - if (defined('SQLITE_SESSION_STORE') && SQLITE_SESSION_STORE) { - session_set_save_handler("s_open", - "s_close", "s_read", "s_write", - "s_destroy", "s_gc"); - } else { - session_save_path(__DIR__ . "/sessions"); - } + session_save_path(__DIR__ . "/sessions"); register_shutdown_function('session_write_close'); |