summaryrefslogtreecommitdiff
path: root/sessions.php
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2017-11-19 13:03:36 +0300
committerAndrew Dolgov <[email protected]>2017-11-19 13:03:36 +0300
commitdfee22901d7c5defc61ef16e831d7c4a8f05ffd1 (patch)
tree19c70fcf048284decccfa9388e374047b04b14d4 /sessions.php
parent41e97ceb2c0e7b36ebb273707f12d2d940c87085 (diff)
* use PDO::sqlite
* remove database-backed sessions (too slow for sqlite)
Diffstat (limited to 'sessions.php')
-rw-r--r--sessions.php51
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');