Deprecated: Assigning the return value of new by reference is deprecated in /home/bluestat/public_html/source/index.php on line 477
ISSO - Blob - ViewGit - Blue Static
<?php
/*=====================================================================*\
|| ###################################################################
|| # Blue Static ISSO Framework
|| # Copyright (c)2005-2009 Blue Static
|| #
|| # This program is free software; you can redistribute it and/or modify
|| # it under the terms of the GNU General Public License as published by
|| # the Free Software Foundation; version 2 of the License.
|| #
|| # This program is distributed in the hope that it will be useful, but
|| # WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|| # or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|| # more details.
|| #
|| # You should have received a copy of the GNU General Public License along
|| # with this program; if not, write to the Free Software Foundation, Inc.,
|| # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
|| ###################################################################
\*=====================================================================*/

/**
 * MySQLi Database Layer (DbMySqlI.php)
 *
 * @package	ISSO
 */

require_once(ISSO . '/Db.php');

/**
 * MySQLi Database Layer
 *
 * This framework is a function wrapper for MySQLi functions so we can have
 * better error reporting and query reporting.
 *
 * @author		Blue Static
 * @copyright	Copyright (c)2005 - 2009, Blue Static
 * @package		ISSO
 *
 */
class BSDbMySqlI extends BSDb
{
	/**
	 * Wrapper: mysql_connect
	 */
	protected function _connect($server, $user, $password, $database)
	{
		return @mysqli_connect($server, $user, $password, $database);
	}

	/**
	 * Wrapper: mysql_query
	 */
	protected function _query($string)
	{
		return mysqli_query($this->dblink, $string);
	}

	/**
	 * Wrapper: mysql_escape_string
	 */
	protected function _escapeBinary($binary)
	{
		return mysqli_real_escape_string($this->dblink, $binary);
	}

	/**
	 * Wrapper: mysql(_real)_escape_string
	 */
	protected function _escapeString($string)
	{
		return mysqli_real_escape_string($this->dblink, $string);
	}

	/**
	 * Not supported: unescape binary string
	 */
	protected function _unescapeBinary($string)
	{
		return $string;
	}

	/**
	 * Wrapper: mysql_insert_id
	 */
	protected function _insertId()
	{
		return mysqli_insert_id($this->dblink);
	}

	/**
	 * Wrapper: mysql_affected_rows
	 */
	protected function _affectedRows($result)
	{
		return mysqli_affected_rows($this->dblink);
	}

	/**
	 * Starts a database transaction
	 */
	public function begin()
	{
		$this->query("START TRANSACTION");
	}

	/**
	 * Reverts a transaction back to a given savepoint
	 */
	public function rollback()
	{
		$this->query("ROLLBACK");
	}

	/**
	 * Commits a database transaction
	 */
	public function commit()
	{
		$this->query("COMMIT");
	}

	/**
	 * Returns the error number
	 *
	 * @return	integer	Error number
	 */
	public function _errorNumber()
	{
		return mysqli_errno($this->dblink);
	}

	/**
	 * Returns the error string
	 *
	 * @return	string	Error string
	 */
	public function _errorString()
	{
		return mysqli_error($this->dblink);
	}
}

/**
 * Database Result
 *
 * This class holds result information for a database result
 *
 * @author		rsesek
 * @copyright	Copyright (c)2005 - 2009, Blue Static
 * @package		ISSO
 *
 */
class BSDbMySqlIResult extends BSDbResult
{
	/**
	 * Wrapper: mysql_fetch_assoc
	 */
	protected function _fetchAssocArray($result)
	{
		return mysqli_fetch_assoc($result);
	}

	/**
	 * Wrapper: mysql_fetch_row
	 */
	protected function _fetchRowArray($result)
	{
		return mysqli_fetch_row($result);
	}

	/**
	 * Wrapper: mysql_fetch_object
	 */
	public function _fetchObject($result)
	{
		return mysqli_fetch_object($result);
	}

	/**
	 * Wrapper: mysql_free_result
	 */
	protected function _freeResult($result)
	{
		mysqli_free_result($result);
	}

	/**
	 * Wrapper: mysql_num_rows
	 */
	protected function _numRows($result)
	{
		return mysqli_num_rows($result);
	}
}

?>