Ir para conteúdo
Fórum Script Brasil

RValentim

Membros
  • Total de itens

    8
  • Registro em

  • Última visita

Sobre RValentim

Contatos

  • Website URL
    http://
  • ICQ
    0

Perfil

  • Gender
    Male
  • Location
    Recife

RValentim's Achievements

0

Reputação

  1. RValentim

    PHP+Oracle

    Boa Tarde a todos, Estou com um projeto para entregar até o fim de março aqui no trabalho, a minha dificuldade é criar um conexão com o Oracle em Camadas, em outras empresas já realizei um projeto parecido porém foi utilizando MySQL e MSSQL. Estou precisando somente de dicas ou exemplos de como fazer as "functions" de select, insert, update e etc igual como fiz nos meus outros projetos. Exemplo das Conexões MySQL e MSSQL MySql Arquivo: Banco.php <? class Banco { private $server; private $bd; private $user; private $password; private $erro; private $result; private $conexao; public function Banco ($u="",$s="",$b="projetophp",$serve="localhost") { if(!$this -> SetConexao($serve,$u,$s)) { $this -> SetErro("Erro de Conexão - ".mysqli_error($this -> GetConexao())); return false; } if(!$this -> SetBd($b)) { $this -> SetErro("Banco não Encontrado - ".mysqli_error($this -> GetConexao())); return false; } } ... [Outros Getters e Setters] ... public function SetConexao ($s,$u,$p){ if($this -> conexao = mysqli_connect($s,$u,$p)) { return true; } return false; } public function SetBd ($bd) { $this -> bd = $bd; if(mysqli_select_db($this -> GetConexao(),$bd)) { return true; } return false; } public function SelectSQL($sql) { if($result = mysqli_query($this -> GetConexao(),$sql)) { $this -> SetResult($result); return true; } $this -> SetErro("Query Inválida - ".mysqli_error($this -> GetConexao())); return false; } // Insert e Update public function InsertSQL($sql) { if(mysqli_query($this -> GetConexao(),$sql)) { return true; } $this -> SetErro("Query Invalida - ".mysqli_error($this -> GetConexao())); return false; } public function SetResult($r){ if(mysqli_num_rows($r) > 0) { $this -> result = array(); while($linha = mysqli_fetch_array($r,MYSQLI_ASSOC)) { array_push($this -> result,$linha); } } else { $this -> result = null; } } } ?> Arquivo: Repositorio.php require("banco.php"); require("usuario.php"); class RepositorioUsuario{ private $banco; private $erro; public function RepositorioUsuario(){ $this -> banco = new Banco(); } public function SetErro($msg) { $this -> erro = "Ocorreu um erro no sitema :".$msg; } public function GetErro() { return $this -> erro; } // Usuário public function ChecaUsuario($u) { $sql = "SELECT * FROM CLIENTES WHERE LOGIN = '".$u->GetLogin()."' AND SENHA ='".$u->GetSenha()."'"; if (!$this -> banco -> SelectSQL($sql)) { $msg = "Erro de login: ".$this -> banco -> GetErro(); $this -> SetErro($msg); return false; } if ($this -> banco -> GetResult() == null) { return false; } else { $usuario = new Usuario($linha['COD_CLI'],$linha['LOGIN'],$linha['SENHA'], $linha['NOME'],$linha['SOBRENOME'],$linha['EMAIL']); } return true; } ... [Outras funções de SQL] ... public function AtualizaUsuario($u) { $sql = "UPDATE CLIENTES SET LOGIN = '".$u->GetLogin()."' "; $sql.= ",NOME = '".$u->GetNome()."',SOBRENOME = '".$u->GetSobrenome()."' "; $sql.= "WHERE COD_CLI ='".$u->GetCodigo()."'"; if (!$this -> banco -> InsertSQL($sql)) { $this -> SetErro($this -> banco -> GetErro()); return false; } return true; } ... [Outras funções de SQL] ... } ?> MSSQL Arquivo: Banco.php <?php class Banco { var $server; var $bd; var $user; var $password; var $erro; var $result; var $conexao; function Banco ($u="",$s="",$b="projetophp",$serve="localhost") { if(!$this -> SetConexao($serve,$u,$s)) { $this -> SetErro("Erro de Conexão - ".mssql_get_last_message($this -> GetConexao())); return false; } if(!$this -> SetBd($b)) { $this -> SetErro("Banco não Encontrado - ".mssql_get_last_message($this -> GetConexao())); return false; } } ... [Outros Getters e Setters] ... function SetConexao ($s,$u,$p){ if($this -> conexao = mssql_connect($s,$u,$p)) { return true; } return false; } function SetBd ($bd) { $this -> bd = $bd; if(mssql_select_db($bd,$this -> GetConexao())) { return true; } return false; } function ExecSQL($sql) { if(mssql_query($sql,$this -> GetConexao())) { return true; } $this -> SetErro("Query Inválida - ".mssql_get_last_message($this -> GetConexao())); return false; } function SelectSQL($sql) { if($result = mssql_query($sql,$this -> GetConexao())) { $this -> SetResult($result); return true; } $this -> SetErro("Query Inválida - ".mssql_get_last_message($this -> GetConexao())); return false; } function InsertSQL($sql) { if (mssql_query($sql,$this -> GetConexao())) { return true; } $this -> SetErro("Query Invalida - ".mssql_get_last_message($this -> GetConexao())); return false; } function SetResult($r){ if(mssql_num_rows($r) > 0) { $this -> result = array(); while($linha = mssql_fetch_array($r,MSSQL_ASSOC)) { array_push($this -> result,$linha); } } else { $this -> result = null; } } } ?> Arquivo: Repositorio.php <?php require("banco.php"); require("usuario.php"); class RepositorioUsuario { var $banco; var $erro; function RepositorioUsuario(){ $this -> banco = new Banco(); } function SetErro($msg) { $this -> erro = "Ocorreu um erro no sitema :".$msg; } function GetErro() { return $this -> erro; } // Usuário function ChecaUsuario($u) { $sql = "SELECT NOME, U_SENHAWEB, NOMEALT, RETORNO FROM CFGUSR "; $sql.= "WHERE (NOME = '".$u->GetNome()."') AND (U_SENHAWEB = '".$u->GetSenha()."')"; if (!$this -> banco -> SelectSQL($sql)) { $msg = "Erro de login: ".$this -> banco -> GetErro(); $this -> SetErro($msg); return false; } if ($this -> banco -> GetResult() == null) { return false; } else { $usuario = new Usuario($linha['NOME'],$linha['SENHA'],$linha['NOMEALT'],$linha['RETORNO']); } return true; } function SetIdenttity($tabela, $tipo) { $sql = "SET IDENTITY_INSERT ".$tabela." ".$tipo; $this -> banco -> ExecSQL($sql); } function InserirRAT($r) { $sql = "INSERT INTO DOCPLA(CODDOC, ARQUIVO, CODEMP, CODPLA, "; $sql.= "CODSET, DESCRICAO) VALUES(".$r->GetPCodigo().",'"; $sql.= ".$r->GetPArquivo()."',".$r->GetPCodEmp().",".$r->GetPCodPla()."; $sql.= ",".$r->GetPCodSet().",'".$r->GetPDescricao()."'; if (!$this -> banco -> InsertSQL($sql)) { $this -> SetErro($this -> banco -> GetErro()); return false; } return true; } } ?> Pretendo até unificar todas as conexões em um unico arquivo separando os comandos pelo CASE "Banco" ou IF "BANCO" Se alguém se interesar pelos arquivos prontos posso disponibilizar. Muito Obrigado pela atenção de todos
  2. Valeu a ajuda nelson8000, qual qualquer coisa eu ti procuro
  3. eu ainda não fiz a parte da pesquisa por que eu não sei por onde começar!!! no momento eu estou com 3 problemas: 1º - (Form1) no Código do Cliente não estou conseguindo fazer pra colocar o Código Automatico (Ex: o ultimo cod. é 52, quando inserir mais um cleinte ele poem automatico o 53..... assim por diante) 2º - Tem uma parte onde mostra a tabela (Form2) completa, mais com um pequeno problema, ela não esta atualizando quando eu insiro um novo cliente, só mostra o novo cliente se eu fechar e abrir novamente o .exe 3º - o terceiro é justamente essa parte da pesquisa que eu não sei como fazer..... se alguém tiver tempo pra me ajudar nesses 3 problema ficarai grato!!
  4. Estou conectando atraz do IBDatabase e o banco foi feito no Interbase!! era isso que você queria saber ?
  5. 1º - Não estou conseguindo atualizar o DBGrid ao clicar em um botão, já tentei todos os meus conhecimentos e nada funciona 2º - Como eu faço pra localizar um cliente cadastrado no banco de dados digitando o Código/CFP e tals..... Desculpa a Ignorancia no delphi mais eu ainda estou no 1º Periodo nesse curso de programação que estou fazendo e tenho 4 projetos pra fazer no delphi, o qual já terminei 2 falta que não utilizaram Banco de Dados os outros 2 vão precisar
  6. Arlon e Alessandro, obrigado aos dois por essa ajuda fico grato a vocês.
  7. Qual o componente ou comando que ao clicar em um botão ele abre o Browser atual do computador (Internet Explorer/Netscape Navigator) já em uma determinada Página?
  8. Pessoal, sou novo na parte de programação e estou com um pequeno problema em Capturar a Posição do Mouse na Tela, qual seria a linha de comando para capturar a posição onde o mouse está parado? Se alguém puder me ajudar com esse pequeno problema ficarei grato!
×
×
  • Criar Novo...