<?php

	class Conexao
	{
		//var $host = "localhost:C:/sysclub_svn/SysClub_D7N/ADPM/Data/";
		var $host = "localhost:C:/sysclub_svn/SysClub/Itamirim/Data/";
		var $dataBase = "SYSCLUB_25.FDB";
        var $username = "SYSDBA";
        var $password = "masterkey";
		var $link;  
		var $trans;

  		function Conecta()
  		{
  			$this->link = ibase_connect($this->host .$this->dataBase, "SYSDBA", "masterkey", "ISO8859_1");
  			if (!$this->link)
  				die("Problema na Conexão com o Banco de Dados");
  		}

		function BeginTrans()
		{
			$this->trans = ibase_trans(IBASE_DEFAULT, $this->link);
		}

		function Commit()
		{
			ibase_commit($this->trans);
			unset($this->trans);
		}

		function Rollback()
		{
			ibase_rollback($this->trans);
			unset($this->trans);
		}

		function Desconecta()
  		{
			if ($this->link)
  				ibase_close($this->link);
			unset($this->link);
  		}

		function Execute($sql)
		{
			if ((!empty($this->trans)) && (isset($this->trans)))
				return ibase_query($this->trans, $sql);
			else
				return ibase_query($this->link, $sql);
		}

		function RegistrosAfetados()
		{
			if ((!empty($this->trans)) && (isset($this->trans)))
				return ibase_affected_rows($this->trans);
			else
				return ibase_affected_rows($this->link);
		}

		function Consulta($consulta)
  		{	
			$resultado = ibase_query($this->link, $consulta);
  			if ($resultado) {
  				return $resultado;
			} else {
  				return null;
  			}
  		}

		function toArray($consulta)
		{
			$table_result=array();
			if($result = $this->Consulta($consulta))
			{
				$r=0;
				while($row = ibase_fetch_assoc($result))
				{ 
					$table_result[$r] = $row;
					$r++;
				}   
			}
			return $table_result;
		}

		function loadBlob($consulta, $campo)
		{
			$resultado = ibase_query($this->link, $consulta);
  			if ($resultado) {
  				$linha = ibase_fetch_assoc($resultado, IBASE_TEXT);
				return $linha[$campo];
			} else {
  				return null;
  			}
		}
	}

?>