Commit 0f720084fa7a05eee51b40739d1973b5323326e6
1 parent
31965084
Exists in
master
#30 by Eriksen, José Rogério Santos: Adicionado parâmetro porta na configuração …
…de conexão com o servidor
Showing
3 changed files
with
191 additions
and
107 deletions
Show diff stats
ieducar/intranet/include/clsBanco.inc.php
| 1 | 1 | <?php |
| 2 | -/** | |
| 3 | - * | |
| 4 | - * @author Prefeitura Municipal de Itajaí | |
| 5 | - * @version SVN: $Id$ | |
| 6 | - * | |
| 7 | - * Pacote: i-PLB Software Público Livre e Brasileiro | |
| 2 | + | |
| 3 | +/* | |
| 4 | + * i-Educar - Sistema de gestão escolar | |
| 8 | 5 | * |
| 9 | - * Copyright (C) 2006 PMI - Prefeitura Municipal de Itajaí | |
| 10 | - * ctima@itajai.sc.gov.br | |
| 6 | + * Copyright (C) 2006 Prefeitura Municipal de Itajaí | |
| 7 | + * <ctima@itajai.sc.gov.br> | |
| 11 | 8 | * |
| 12 | - * Este programa é software livre, você pode redistribuí-lo e/ou | |
| 13 | - * modificá-lo sob os termos da Licença Pública Geral GNU, conforme | |
| 14 | - * publicada pela Free Software Foundation, tanto a versão 2 da | |
| 15 | - * Licença como (a seu critério) qualquer versão mais nova. | |
| 9 | + * Este programa é software livre; você pode redistribuí-lo e/ou modificá-lo | |
| 10 | + * sob os termos da Licença Pública Geral GNU conforme publicada pela Free | |
| 11 | + * Software Foundation; tanto a versão 2 da Licença, como (a seu critério) | |
| 12 | + * qualquer versão posterior. | |
| 16 | 13 | * |
| 17 | - * Este programa é distribuído na expectativa de ser útil, mas SEM | |
| 18 | - * QUALQUER GARANTIA. Sem mesmo a garantia implícita de COMERCIALI- | |
| 19 | - * ZAÇÃO ou de ADEQUAÇÃO A QUALQUER PROPÓSITO EM PARTICULAR. Con- | |
| 20 | - * sulte a Licença Pública Geral GNU para obter mais detalhes. | |
| 14 | + * Este programa é distribuído na expectativa de que seja útil, porém, SEM | |
| 15 | + * NENHUMA GARANTIA; nem mesmo a garantia implícita de COMERCIABILIDADE OU | |
| 16 | + * ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. Consulte a Licença Pública Geral | |
| 17 | + * do GNU para mais detalhes. | |
| 21 | 18 | * |
| 22 | - * Você deve ter recebido uma cópia da Licença Pública Geral GNU | |
| 23 | - * junto com este programa. Se não, escreva para a Free Software | |
| 24 | - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA | |
| 25 | - * 02111-1307, USA. | |
| 19 | + * Você deve ter recebido uma cópia da Licença Pública Geral do GNU junto | |
| 20 | + * com este programa; se não, escreva para a Free Software Foundation, Inc., no | |
| 21 | + * endereço 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. | |
| 22 | + */ | |
| 23 | + | |
| 24 | +/** | |
| 25 | + * clsBanco class. | |
| 26 | 26 | * |
| 27 | + * @author Prefeitura Municipal de Itajaí <ctima@itajai.sc.gov.br> | |
| 28 | + * @license http://creativecommons.org/licenses/GPL/2.0/legalcode.pt CC GNU GPL | |
| 29 | + * @package Core | |
| 30 | + * @since Classe disponível desde a versão 1.0.0 | |
| 31 | + * @version $Id$ | |
| 27 | 32 | */ |
| 28 | 33 | |
| 29 | 34 | if (!class_exists('clsBancoSql_')) { |
| ... | ... | @@ -32,10 +37,11 @@ if (!class_exists('clsBancoSql_')) { |
| 32 | 37 | |
| 33 | 38 | class clsBanco extends clsBancoSQL_ { |
| 34 | 39 | |
| 35 | - public $strHost = "localhost"; // Nome ou endereço IP do servidor do banco de dados | |
| 36 | - public $strBanco = "ieducardb"; // Nome do banco de dados | |
| 37 | - public $strUsuario = "ieducaruser"; // Usuário devidamente autorizado a acessar o banco | |
| 38 | - public $strSenha = "ieducar"; // Senha do usuário do banco | |
| 40 | + protected $strHost = 'localhost'; // Nome ou endereço IP do servidor do banco de dados | |
| 41 | + protected $strBanco = 'ieducardb'; // Nome do banco de dados | |
| 42 | + protected $strUsuario = 'ieducaruser'; // Usuário devidamente autorizado a acessar o banco | |
| 43 | + protected $strSenha = 'ieducar'; // Senha do usuário do banco | |
| 44 | + protected $strPort = NULL; // Porta do servidor de banco de dados | |
| 39 | 45 | |
| 40 | 46 | public $bLink_ID = 0; // Identificador da conexão |
| 41 | 47 | public $bConsulta_ID = 0; // Identificador do resultado da consulta |
| ... | ... | @@ -48,9 +54,9 @@ class clsBanco extends clsBancoSQL_ { |
| 48 | 54 | |
| 49 | 55 | public $bAuto_Limpa = FALSE; // '1' para limpar o resultado assim que chegar ao último registro |
| 50 | 56 | |
| 51 | - public $strStringSQL = ""; | |
| 57 | + public $strStringSQL = ''; | |
| 52 | 58 | |
| 53 | - var $strType = ""; | |
| 59 | + var $strType = ''; | |
| 54 | 60 | var $arrayStrFields = array(); |
| 55 | 61 | var $arrayStrFrom = array(); |
| 56 | 62 | var $arrayStrWhere = array(); |
| ... | ... | @@ -58,7 +64,7 @@ class clsBanco extends clsBancoSQL_ { |
| 58 | 64 | var $arrayStrGroupBy = array(); |
| 59 | 65 | var $iLimitInicio; |
| 60 | 66 | var $iLimitQtd; |
| 61 | - var $arrayStrArquivo = ""; | |
| 67 | + var $arrayStrArquivo = ''; | |
| 62 | 68 | |
| 63 | 69 | |
| 64 | 70 | |
| ... | ... | @@ -73,9 +79,9 @@ class clsBanco extends clsBancoSQL_ { |
| 73 | 79 | * Retorna a quantidade de registros de uma tabela baseado no objeto que a |
| 74 | 80 | * abstrai. Este deve ter um atributo público Object->_tabela. |
| 75 | 81 | * |
| 76 | - * @param object Objeto que abstrai a tabela | |
| 77 | - * @param string Nome da coluna para cálculo COUNT() | |
| 78 | - * @return int Quantidade de registros da tabela | |
| 82 | + * @param mixed Objeto que abstrai a tabela | |
| 83 | + * @param string Nome da coluna para cálculo COUNT() | |
| 84 | + * @return int Quantidade de registros da tabela | |
| 79 | 85 | */ |
| 80 | 86 | public function doCountFromObj($obj, $column = '*') { |
| 81 | 87 | if ($obj->_tabela == NULL) { | ... | ... |
ieducar/intranet/include/clsBancoPgSql.inc.php
| 1 | 1 | <?php |
| 2 | -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * | |
| 3 | -* * | |
| 4 | -* @author Prefeitura Municipal de Itajaí * | |
| 5 | -* @updated 29/03/2007 * | |
| 6 | -* Pacote: i-PLB Software Público Livre e Brasileiro * | |
| 7 | -* * | |
| 8 | -* Copyright (C) 2006 PMI - Prefeitura Municipal de Itajaí * | |
| 9 | -* ctima@itajai.sc.gov.br * | |
| 10 | -* * | |
| 11 | -* Este programa é software livre, você pode redistribuí-lo e/ou * | |
| 12 | -* modificá-lo sob os termos da Licença Pública Geral GNU, conforme * | |
| 13 | -* publicada pela Free Software Foundation, tanto a versão 2 da * | |
| 14 | -* Licença como (a seu critério) qualquer versão mais nova. * | |
| 15 | -* * | |
| 16 | -* Este programa é distribuído na expectativa de ser útil, mas SEM * | |
| 17 | -* QUALQUER GARANTIA. Sem mesmo a garantia implícita de COMERCIALI- * | |
| 18 | -* ZAÇÃO ou de ADEQUAÇÃO A QUALQUER PROPÓSITO EM PARTICULAR. Con- * | |
| 19 | -* sulte a Licença Pública Geral GNU para obter mais detalhes. * | |
| 20 | -* * | |
| 21 | -* Você deve ter recebido uma cópia da Licença Pública Geral GNU * | |
| 22 | -* junto com este programa. Se não, escreva para a Free Software * | |
| 23 | -* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA * | |
| 24 | -* 02111-1307, USA. * | |
| 25 | -* * | |
| 26 | -* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ | |
| 27 | -require_once( "clsConfigItajai.inc.php" ); | |
| 28 | -require_once( "include/clsCronometro.inc.php" ); | |
| 29 | -require_once( "include/clsEmail.inc.php" ); | |
| 30 | -class clsBancoSQL_ | |
| 31 | -{ | |
| 32 | - | |
| 33 | - /*protected*/var $strHost = ""; // Nome ou ip do servidor de dados | |
| 34 | - /*protected*/var $strBanco = ""; // Nome do Banco de Dados | |
| 35 | - /*protected*/var $strUsuario = ""; // Usuário devidamente autorizado a acessar o Banco | |
| 36 | - /*protected*/var $strSenha = ""; // Senha do Usuário do Banco | |
| 37 | - /*private*/ var $strFraseConexao = ""; | |
| 38 | - | |
| 39 | - /*protected*/var $bLink_ID = 0; // Identificador de Conexão | |
| 40 | - /*protected*/var $bConsulta_ID = 0; // Identificador de Resultado de Consulta | |
| 41 | - /*protected*/var $arrayStrRegistro = array(); // Tupla resultante de uma consulta | |
| 42 | - /*protected*/var $iLinha = 0; // Ponteiro interno para a Tupla atual da consulta | |
| 43 | - | |
| 44 | - /*protected*/var $bErro_no = 0; // Se ocorreu erro na consulta, retorna Falso | |
| 45 | - /*protected*/var $strErro = ""; // Frase de descrição do Erro Retornado | |
| 46 | - /*protected*/var $bDepurar = false; // Ativa ou desativa funçoes de depuração | |
| 47 | - | |
| 48 | - /*protected*/var $bAuto_Limpa = false; //" 1" para limpar o resultado assim que chegar ao último registro | |
| 49 | - | |
| 50 | - /*private*/var $strStringSQL = ""; | |
| 51 | - /*protected*/var $transactionBlock = false; | |
| 52 | - /*protected*/var $savePoints = array(); | |
| 53 | - /*protected*/var $showReportarErro = true; | |
| 54 | - | |
| 55 | - /*public*/ var $executandoEcho = false; | |
| 56 | 2 | |
| 3 | +/* | |
| 4 | + * i-Educar - Sistema de gestão escolar | |
| 5 | + * | |
| 6 | + * Copyright (C) 2006 Prefeitura Municipal de Itajaí | |
| 7 | + * <ctima@itajai.sc.gov.br> | |
| 8 | + * | |
| 9 | + * Este programa é software livre; você pode redistribuí-lo e/ou modificá-lo | |
| 10 | + * sob os termos da Licença Pública Geral GNU conforme publicada pela Free | |
| 11 | + * Software Foundation; tanto a versão 2 da Licença, como (a seu critério) | |
| 12 | + * qualquer versão posterior. | |
| 13 | + * | |
| 14 | + * Este programa é distribuído na expectativa de que seja útil, porém, SEM | |
| 15 | + * NENHUMA GARANTIA; nem mesmo a garantia implícita de COMERCIABILIDADE OU | |
| 16 | + * ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. Consulte a Licença Pública Geral | |
| 17 | + * do GNU para mais detalhes. | |
| 18 | + * | |
| 19 | + * Você deve ter recebido uma cópia da Licença Pública Geral do GNU junto | |
| 20 | + * com este programa; se não, escreva para a Free Software Foundation, Inc., no | |
| 21 | + * endereço 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. | |
| 22 | + */ | |
| 23 | + | |
| 24 | +/** | |
| 25 | + * clsBancoSQL_ class. | |
| 26 | + * | |
| 27 | + * @author Prefeitura Municipal de Itajaí <ctima@itajai.sc.gov.br> | |
| 28 | + * @license http://creativecommons.org/licenses/GPL/2.0/legalcode.pt CC GNU GPL | |
| 29 | + * @package Core | |
| 30 | + * @since Classe disponível desde a versão 1.0.0 | |
| 31 | + * @version $Id$ | |
| 32 | + */ | |
| 33 | + | |
| 34 | +require_once 'clsConfigItajai.inc.php'; | |
| 35 | +require_once 'include/clsCronometro.inc.php'; | |
| 36 | +require_once 'include/clsEmail.inc.php'; | |
| 37 | + | |
| 38 | +class clsBancoSQL_ { | |
| 39 | + | |
| 40 | + protected $strHost = NULL; // Nome ou endereço IP do servidor do banco de dados | |
| 41 | + protected $strBanco = NULL; // Nome do banco de dados | |
| 42 | + protected $strUsuario = NULL; // Usuário devidamente autorizado a acessar o banco | |
| 43 | + protected $strSenha = NULL; // Senha do usuário do banco | |
| 44 | + protected $strPort = NULL; // Porta do servidor de banco de dados | |
| 45 | + | |
| 46 | + public $bLink_ID = 0; // Identificador da conexão | |
| 47 | + public $bConsulta_ID = 0; // Identificador do resultado da consulta | |
| 48 | + public $arrayStrRegistro = array(); // Tupla resultante de uma consulta | |
| 49 | + public $iLinha = 0; // Ponteiro interno para a tupla atual da consulta | |
| 50 | + | |
| 51 | + public $bErro_no = 0; // Se ocorreu erro na consulta, retorna FALSE | |
| 52 | + public $strErro = ''; // Frase de descrição do erro retornado | |
| 53 | + public $bDepurar = FALSE; // Ativa ou desativa funções de depuração | |
| 54 | + | |
| 55 | + public $bAuto_Limpa = FALSE; // '1' para limpar o resultado assim que chegar ao último registro | |
| 56 | + | |
| 57 | + public $strStringSQL = ''; | |
| 58 | + | |
| 59 | + /*protected*/var $transactionBlock = FALSE; | |
| 60 | + /*protected*/var $savePoints = array(); | |
| 61 | + /*protected*/var $showReportarErro = TRUE; | |
| 62 | + | |
| 63 | + /*public*/ var $executandoEcho = FALSE; | |
| 64 | + | |
| 65 | + | |
| 66 | + /* | |
| 67 | + * Setters | |
| 68 | + */ | |
| 69 | + public function setHost($v) { | |
| 70 | + $this->strHost = (string) $v; | |
| 71 | + } | |
| 72 | + | |
| 73 | + public function setDbname($v) { | |
| 74 | + $this->strBanco = (string) $v; | |
| 75 | + } | |
| 76 | + | |
| 77 | + public function setUser($v) { | |
| 78 | + $this->strUsuario = (string) $v; | |
| 79 | + } | |
| 80 | + | |
| 81 | + public function setPassword($v) { | |
| 82 | + $this->strSenha = (string) $v; | |
| 83 | + } | |
| 84 | + | |
| 85 | + public function setPort($v) { | |
| 86 | + $this->strPort = (string) $v; | |
| 87 | + } | |
| 88 | + | |
| 89 | + | |
| 90 | + /* | |
| 91 | + * Getters | |
| 92 | + */ | |
| 93 | + public function getHost() { | |
| 94 | + return $this->strHost; | |
| 95 | + } | |
| 96 | + | |
| 97 | + public function getDbname() { | |
| 98 | + return $this->strBanco; | |
| 99 | + } | |
| 100 | + | |
| 101 | + public function getUser() { | |
| 102 | + return $this->strUsuario; | |
| 103 | + } | |
| 104 | + | |
| 105 | + public function getPassword() { | |
| 106 | + return $this->strSenha; | |
| 107 | + } | |
| 108 | + | |
| 109 | + public function getPort() { | |
| 110 | + return $this->strPort; | |
| 111 | + } | |
| 112 | + | |
| 113 | + public function getFraseConexao() { | |
| 114 | + return $this->strFraseConexao; | |
| 115 | + } | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + /** | |
| 120 | + * Constrói a string de conexão de banco de dados | |
| 121 | + */ | |
| 122 | + public function FraseConexao() { | |
| 123 | + $this->strFraseConexao = ""; | |
| 124 | + if (!empty($this->strHost)) { | |
| 125 | + $this->strFraseConexao .= "host={$this->strHost}"; | |
| 126 | + } | |
| 127 | + if (!empty($this->strBanco)) { | |
| 128 | + $this->strFraseConexao .= " dbname={$this->strBanco}"; | |
| 129 | + } | |
| 130 | + if (!empty($this->strUsuario)) { | |
| 131 | + $this->strFraseConexao .= " user={$this->strUsuario}"; | |
| 132 | + } | |
| 133 | + if (!empty($this->strSenha)) { | |
| 134 | + $this->strFraseConexao .= " password={$this->strSenha}"; | |
| 135 | + } | |
| 136 | + if (!is_null($this->strPort)) { | |
| 137 | + $this->strFraseConexao .= " port={$this->strPort}"; | |
| 138 | + } | |
| 139 | + } | |
| 57 | 140 | |
| 58 | - /* | |
| 59 | - Monta frase de conexão | |
| 60 | - */ | |
| 61 | - /*private*/ function FraseConexao() | |
| 62 | - { | |
| 63 | - $this->strFraseConexao = ""; | |
| 64 | - if (!empty($this->strHost)) | |
| 65 | - { | |
| 66 | - $this->strFraseConexao .= "host={$this->strHost} "; | |
| 67 | - } | |
| 68 | - if (!empty($this->strBanco)) | |
| 69 | - { | |
| 70 | - $this->strFraseConexao .= "dbname={$this->strBanco} "; | |
| 71 | - } | |
| 72 | - if (!empty($this->strUsuario)) | |
| 73 | - { | |
| 74 | - $this->strFraseConexao .= "user={$this->strUsuario} "; | |
| 75 | - } | |
| 76 | - if (!empty($this->strSenha)) | |
| 77 | - { | |
| 78 | - $this->strFraseConexao .= "password={$this->strSenha} "; | |
| 79 | - } | |
| 80 | - } | |
| 81 | 141 | |
| 82 | 142 | /* |
| 83 | 143 | Conecta-se em Banco, com Usuario e Senha, na Porta do Host | ... | ... |
ieducar/tests/unit/ClsBancoTest.class.php
| ... | ... | @@ -45,4 +45,22 @@ class ClsBancoTest extends UnitBaseTest { |
| 45 | 45 | $this->assertNotEquals(TRUE, is_null($db->doCountFromObj($obj))); |
| 46 | 46 | } |
| 47 | 47 | |
| 48 | + public function testConexao() { | |
| 49 | + $string = 'host=localhost dbname=ieducardb user=ieducaruser password=password port=5432'; | |
| 50 | + | |
| 51 | + $db = new clsBanco(); | |
| 52 | + $db->setHost('localhost'); | |
| 53 | + $db->setDbname('ieducardb'); | |
| 54 | + $db->setUser('ieducaruser'); | |
| 55 | + $db->setPassword('password'); | |
| 56 | + $db->setPort('5432'); | |
| 57 | + | |
| 58 | + $db->FraseConexao(); | |
| 59 | + $stringCompare = $db->getFraseConexao(); | |
| 60 | + $this->assertEquals($string, $stringCompare); | |
| 61 | + | |
| 62 | + $db->Conecta(); | |
| 63 | + $this->assertTrue((bool)$db->bLink_ID); | |
| 64 | + } | |
| 65 | + | |
| 48 | 66 | } |
| 49 | 67 | \ No newline at end of file | ... | ... |