function getSelfPath() { return _PROTOCOL_ . $_SERVER['HTTP_HOST'] . getSelfDirectory(); }
function db_session_read($sessionID) { $res = mysqli_param_query('SELECT data FROM {prefix}session where id=?', [$sessionID]); if ($row = mysqli_fetch_row($res)) { return reset($row); } return ''; } function db_session_write($sessionID, $sessionData) { mysqli_param_query('REPLACE INTO {prefix}session (id, data, session_timestamp) VALUES (?, ?, ?)', [$sessionID, $sessionData, date('Y-m-d H:i:s', time())]); return true; } function db_session_destroy($sessionID) { mysqli_param_query('DELETE FROM {prefix}session WHERE id=?', [$sessionID]); return true; } function db_session_gc($sessionMaxAge) { if (!$sessionMaxAge) { $sessionMaxAge = 900; } mysqli_param_query('DELETE FROM {prefix}session WHERE session_timestamp<?', [date('Y-m-d H:i:s', time() - $sessionMaxAge)]); return true; } session_set_save_handler('db_session_open', 'db_session_close', 'db_session_read', 'db_session_write', 'db_session_destroy', 'db_session_gc'); session_name(_SESSION_NAME_); if (_SESSION_RESTRICT_PATH_) { session_set_cookie_params(0, getSelfDirectory() . '/'); }