/** */ public function read($id) { /* Begin a transaction. */ // TODO: Rowlocking in Mysql if (!$this->_db->transactionStarted()) { $this->_db->beginDbTransaction(); } /* Build query. */ $query = sprintf('SELECT session_data FROM %s WHERE session_id = ?', $this->_params['table']); $values = array($id); /* Execute the query. */ try { $columns = $this->_db->columns($this->_params['table']); return $columns['session_data']->binaryToString($this->_db->selectValue($query, $values)); } catch (Horde_Db_Exception $e) { return ''; } }
/** * Check if a transaction has been started. * * @return boolean True if transaction has been started. */ public function transactionStarted() { $result = $this->_write->transactionStarted(); $this->_lastQuery = $this->_write->getLastQuery(); return $result; }