v5:session:session_index
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
v5:session:session_index [2016/05/16 02:17] – mnewnham | v5:session:session_index [2018/07/24 00:21] – [MySQL] mnewnham | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Session Management ====== | ||
+ | ~~NOTOC~~ | ||
<WRAP right box> | <WRAP right box> | ||
[[v5: | [[v5: | ||
- | [[v5: | + | [[v5: |
</ | </ | ||
- | ====== Session Management ====== | + | |
===== Introduction ===== | ===== Introduction ===== | ||
ADOdb session management extends the standard functionality of PHP sessions, by allowing the normal session data seen to be stored in a database itself. There are numerous ways that this method enhances the default behavior | ADOdb session management extends the standard functionality of PHP sessions, by allowing the normal session data seen to be stored in a database itself. There are numerous ways that this method enhances the default behavior | ||
Line 85: | Line 87: | ||
ADOdb_Session:: | ADOdb_Session:: | ||
- | ADOdb_session::Persist($connectMode=false); | + | ADOdb_Session::persist($connectMode=false); |
session_start(); | session_start(); | ||
Line 99: | Line 101: | ||
</ | </ | ||
- | The parameter to the '' | ||
- | |||
- | ^$connectMode^Connection Method^ | ||
- | ^true|PConnect()| | ||
- | ^false|Connect()| | ||
- | ^' | ||
- | ^' | ||
- | ^' | ||
<WRAP important> | <WRAP important> | ||
The original session management routines that use '' | The original session management routines that use '' | ||
Line 122: | Line 116: | ||
ADOdb_Session:: | ADOdb_Session:: | ||
- | adodb_sess_open(false, | ||
session_start(); | session_start(); | ||
</ | </ | ||
Line 137: | Line 130: | ||
ADOdb_Session:: | ADOdb_Session:: | ||
- | adodb_sess_open(false, | ||
session_start(); | session_start(); | ||
</ | </ | ||
Line 145: | Line 137: | ||
Create this table in your database. | Create this table in your database. | ||
- | ==== MySQL ==== | + | ==== MySQL or PDO MySQL ==== |
| | ||
CREATE TABLE sessions2( | CREATE TABLE sessions2( | ||
sesskey VARCHAR( 64 ) NOT NULL DEFAULT '', | sesskey VARCHAR( 64 ) NOT NULL DEFAULT '', | ||
- | | + | |
expireref VARCHAR( 250 ) DEFAULT '', | expireref VARCHAR( 250 ) DEFAULT '', | ||
created DATETIME NOT NULL , | created DATETIME NOT NULL , | ||
Line 226: | Line 218: | ||
$user = $ADODB_SESS_CONN-> | $user = $ADODB_SESS_CONN-> | ||
- | $ADODB_SESS_CONN-> | + | $ADODB_SESS_CONN-> |
system(" | system(" | ||
} | } | ||
Line 265: | Line 257: | ||
will compress and then encrypt the record in the database. | will compress and then encrypt the record in the database. | ||
- | ===== Session Cookie Regeneration ===== | ||
- | The method '' | ||
- | ==== Usage ==== | ||
- | |||
- | <code php> | ||
- | include ' | ||
- | |||
- | session_start(); | ||
- | /* | ||
- | * Approximately every 10 page loads, reset cookie for safety. | ||
- | * This is extremely simplistic example, better | ||
- | * to regenerate only when the user logs in or changes | ||
- | * user privilege levels. | ||
- | */ | ||
- | if ((rand()%10) == 0) | ||
- | adodb_session_regenerate_id(); | ||
- | </ | ||
- | |||
- | This function calls '' | ||
- | |||
- | ===== Vacuum/ | ||
- | |||
- | During session garbage collection, if postgresql is detected, ADOdb can be set to run VACUUM. If mysql is detected, then optimize database could be called.You can turn this on or off using: | ||
- | <code php> | ||
- | $turnOn = true; # or false | ||
- | ADODB_Session:: | ||
- | </ | ||
- | The default is optimization is disabled. | ||
- | ===== Backwards | + | ===== Backwards |
The older method of connecting to ADOdb using global variables is now deprecated, and **will be removed** in ADOdb version 6.0: | The older method of connecting to ADOdb using global variables is now deprecated, and **will be removed** in ADOdb version 6.0: |
v5/session/session_index.txt · Last modified: 2023/04/08 18:08 by dregad