PHP e Oracle - O mundo dos grandes!!
A primeira pergunta devem ser (porque esse tonto não traduziu os Coming soon) o que isso ?? é que estas funções não foram documentadas.
Aqui tentarei passar alguns pontos relevantes na hora de trabalhar efetivamente com os dois, espero receber comentários sobre os exemplos e sugestões (sinta-se livre também para dar continuidade à este documento)
Para conectar será necessário o uso de um login/senha válido usando a função OCILogon();
O Oracle vem com alguns usuários padrão, um deles é o login "scott" e a senha "tiger"
exemplo:
Este foi um exemplo de como fazer uma conexão, agora explicarei o que é cada linha e porque daria um eventual erro.
- as linhas que setam as variáveis de ambiente ORACLE_HOME e ORACLE_SID são para evitar surpresas, sem elas provavelmente vá apontar um erro de conexão (não sei precisar qual o numero do erro)
- o $banco pode ser deixado em branco caso esteja acessando de uma máquina local $banco="";
fiz este teste e ele aceitou normalmente em um WINDOWS 2000, Slackware9 com Oracle 9 e Red Hat Linux 9 e Oracle 9 também funcionam normal
- a linha da variável $conexao inclui um if para validar ou nao a expressao da função OCILogon que tenta conectar com o Oracle, retornando sucesso ou erro.
Aqui tentarei passar alguns pontos relevantes na hora de trabalhar efetivamente com os dois, espero receber comentários sobre os exemplos e sugestões (sinta-se livre também para dar continuidade à este documento)
Para conectar será necessário o uso de um login/senha válido usando a função OCILogon();
O Oracle vem com alguns usuários padrão, um deles é o login "scott" e a senha "tiger"
exemplo:
<?php putenv("ORACLE_HOME=/path/pro/diretorio/do/oracle"); // passa a variável do ORACLE_HOME putenv("ORACLE_SID=nome_do_database"); // passa a variável do Oracle_SID $user="scott"; // seta o usuario $senha="tiger"; // seta a senha $banco="(DESCRIPTION= (ADDRESS_LIST= (ADDRESS=(PROTOCOL=TCP) (HOST=127.0.0.1)(PORT=1521) ) ) (CONNECT_DATA=(SERVICE_NAME=melancia_legal)) )"; // configuracoes do banco (isso muda um pouco no oracle) // neste caso usei o HOST como local "127.0.0.1" // e o nome do banco em SERVICE_NAME como sendo melancia_legal // somente para ficar mais fácil de enxergar o que deve ser alterado. if ($conexao = OCILogon($user,$senha,$banco) ) echo "Conexão bem sucedida."; else echo "Erro na conexão com o Oracle."; ?>
Este foi um exemplo de como fazer uma conexão, agora explicarei o que é cada linha e porque daria um eventual erro.
- as linhas que setam as variáveis de ambiente ORACLE_HOME e ORACLE_SID são para evitar surpresas, sem elas provavelmente vá apontar um erro de conexão (não sei precisar qual o numero do erro)
- o $banco pode ser deixado em branco caso esteja acessando de uma máquina local $banco="";
fiz este teste e ele aceitou normalmente em um WINDOWS 2000, Slackware9 com Oracle 9 e Red Hat Linux 9 e Oracle 9 também funcionam normal
- a linha da variável $conexao inclui um if para validar ou nao a expressao da função OCILogon que tenta conectar com o Oracle, retornando sucesso ou erro.
Boa tarde, alguem por favor saberia me informa que erro e este???? Conheco bem Oracle mas php nada ainda rsrsrsrs. Desde ja agradeco.
Fatal error: Call to undefined function OCILogon() in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\phpinfo.php on line 2
Fatal error: Call to undefined function OCILogon() in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\phpinfo.php on line 2
05/11/2006 11:56am
(~18 anos atrás)
Nao estou conseguindo usar as funções oci em um win xp prof.
Instalei o Oracle9i, habilitei no php.ini php_oracle.dll e php_oci8.dll mas consigo apenas usar as funções ora_*. Nas oci* o php retorna que não existe. Aceito sugestões.
Instalei o Oracle9i, habilitei no php.ini php_oracle.dll e php_oci8.dll mas consigo apenas usar as funções ora_*. Nas oci* o php retorna que não existe. Aceito sugestões.
14/06/2006 9:02am
(~18 anos atrás)
Cara eu tambem instalei o oracle 8 e php 5
e não consigo conectar por nada.
Se alguem ja tiver conseguindo me mande resposta.
Mas eu estou tentando com o oracle e o php na mesma maquina!
e não consigo conectar por nada.
Se alguem ja tiver conseguindo me mande resposta.
Mas eu estou tentando com o oracle e o php na mesma maquina!
23/03/2006 5:50am
(~18 anos atrás)
Ólá pessoal, eu tentei fazer a conexão do PHP com o Oracle e não tem jeito de funcionar tentei com varias versões do PHP e do Apache, tenho atualmente no micro o Apache 2, PHP 5, Client Oracle 8i, E o Win 2000, toda a configuração tanto quanto do oracle quanto php e apache estam corretas revisadas varias vezes por mais de 3 programadores aqui da empresa, e a conclusão que chegamos é que o php não conecta com o oracle 8i, não com Apache 2, PHP 4 e 5 e o Client Oracle 8i.
16/01/2006 11:52am
(~19 anos atrás)
Instalei o apache 1.3 e o php 5 sem problemas.. e ta td a funcionar!Eu agr keria ke o apache possa aceder a uma base de dados Oracle!Colokei o extension=oci.dll no php.ini ms ele diz ke n consegue carregar o module OCI! Alguem me puderia ajudar?
um Abraço
um Abraço
11/11/2005 6:06pm
(~19 anos atrás)
olá colega!
muito boa sua matéria!! só gostaria também que falasse um pouco sobre como executar stored procedures no oracle usando o php!!
Valew!
muito boa sua matéria!! só gostaria também que falasse um pouco sobre como executar stored procedures no oracle usando o php!!
Valew!
13/07/2005 12:56pm
(~19 anos atrás)
ERRO NA CONEXÃO
ORA-03113: end-of-file on communication channel
- to com esse erro ai alguem tem uma solução??
Desde já agradeço !
ORA-03113: end-of-file on communication channel
- to com esse erro ai alguem tem uma solução??
Desde já agradeço !
16/06/2005 1:33pm
(~19 anos atrás)
ta blz mto lindo... ri bastante quase me acabei d rir na verdade...
e pra execultar uma procedure ? vou usar OCIBindByName ???
o ki farei ?
e pra execultar uma procedure ? vou usar OCIBindByName ???
o ki farei ?
08/06/2005 2:13pm
(~19 anos atrás)
ORA-12560: TNS:erro de adaptador de protocolo
- Estou usando Oracle 10g e PHP 5.1.6 Apache 2.2, se quiser ver o info gabrielgaliaso.no-ip.org