function adodb_sess_write($key, $val) { $Crypt = new MD5Crypt(); global $ADODB_SESS_INSERT, $ADODB_SESS_CONN, $ADODB_SESS_LIFE, $ADODB_SESSION_TBL, $ADODB_SESSION_EXPIRE_NOTIFY; $expiry = time() + $ADODB_SESS_LIFE; // encrypt session data.. $val = $Crypt->Encrypt(rawurlencode($val), ADODB_Session_Key()); $arr = array('sesskey' => $key, 'expiry' => $expiry, 'data' => $val); if ($ADODB_SESSION_EXPIRE_NOTIFY) { $var = reset($ADODB_SESSION_EXPIRE_NOTIFY); global ${$var}; $arr['expireref'] = ${$var}; } $rs = $ADODB_SESS_CONN->Replace($ADODB_SESSION_TBL, $arr, 'sesskey', $autoQuote = true); if (!$rs) { ADOConnection::outp(' -- Session Replace: ' . $ADODB_SESS_CONN->ErrorMsg() . '</p>', false); } else { // bug in access driver (could be odbc?) means that info is not commited // properly unless select statement executed in Win2000 if ($ADODB_SESS_CONN->databaseType == 'access') { $rs = $ADODB_SESS_CONN->Execute("select sesskey from {$ADODB_SESSION_TBL} WHERE sesskey='{$key}'"); } } return isset($rs); }
function adodb_sess_write($key, $val) { $Crypt = new MD5Crypt(); global $ADODB_SESS_INSERT, $ADODB_SESS_CONN, $ADODB_SESS_LIFE, $ADODB_SESSION_TBL; $expiry = time() + $ADODB_SESS_LIFE; // encrypt session data.. $val = $Crypt->Encrypt(rawurlencode($val), ADODB_Session_Key()); $qry = "UPDATE {$ADODB_SESSION_TBL} SET expiry={$expiry},data='{$val}' WHERE sesskey='{$key}'"; $rs = $ADODB_SESS_CONN->Execute($qry); if ($rs) { $rs->Close(); } else { print '<p>Session Update: ' . $ADODB_SESS_CONN->ErrorMsg() . '</p>'; } if ($ADODB_SESS_INSERT || $rs === false) { $qry = "INSERT INTO {$ADODB_SESSION_TBL}(sesskey,expiry,data) VALUES ('{$key}',{$expiry},'{$val}')"; $rs = $ADODB_SESS_CONN->Execute($qry); if ($rs) { $rs->Close(); } else { print '<p>Session Insert: ' . $ADODB_SESS_CONN->ErrorMsg() . '</p>'; } } // bug in access driver (could be odbc?) means that info is not commited // properly unless select statement executed in Win2000 if ($ADODB_SESS_CONN->databaseType == 'access') { $rs = $ADODB_SESS_CONN->Execute("select sesskey from {$ADODB_SESSION_TBL} WHERE sesskey='{$key}'"); } return isset($rs); }