+ /**
+ * start transaction
+ *
+ * this will start a transaction on ACID-supporting database
+ * systems.
+ *
+ * @return bool
+ */
+ public function db_start_transaction()
+ {
+ if(!$this->getConnStatus())
+ return false;
+
+ $result = $this->db_exec("BEGIN");
+
+ /* Errors? */
+ if(PEAR::isError($result))
+ $this->throwError($result->getMessage() .' - '. $result->getUserInfo());
+
+ return true;
+
+ } // db_start_transaction()
+
+ /**
+ * commit transaction
+ *
+ * this will commit an ongoing transaction on ACID-supporting
+ * database systems
+ *
+ * @return bool
+ */
+ public function db_commit_transaction()
+ {
+ if(!$this->getConnStatus())
+ return false;
+
+ $result = $this->db_exec("COMMIT");
+
+ /* Errors? */
+ if(PEAR::isError($result))
+ $this->throwError($result->getMessage() .' - '. $result->getUserInfo());
+
+ return true;
+
+ } // db_commit_transaction()
+
+ /**
+ * rollback transaction()
+ *
+ * this function aborts a on going transaction
+ *
+ * @return bool
+ */
+ public function db_rollback_transaction()
+ {
+ if(!$this->getConnStatus())
+ return false;
+
+ $result = $this->db_exec("ROLLBACK");
+
+ /* Errors? */
+ if(PEAR::isError($result))
+ $this->throwError($result->getMessage() .' - '. $result->getUserInfo());
+
+ return true;
+
+ } // db_rollback_transaction()
+
+} // PHPFSPOT_DB