Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Martinsrj

Oracle não aparece na configuração do PHP

Recommended Posts

1- ja esta desabilitada

2- Windows 2003 Server R2 Enterprise Edition Service Pack 2

3- Pretendo usar os dois, Apache na porta 81 e o IIS 80

4- A versao e a 8.1

5- Possuo o oracle cliente instalado e inclusive fiz um teste de conexao do cliente para com o server atraves do TNSping

 

 

1. desative:

extension=php_oracle.dll

 

2. qual o seu sistema operacional e versão ?

 

 

3. pretende usar Apache ou IIS ou ambos?

 

 

4. qual versão do oracle pretende usar ?

 

 

5. possui o oracle-client instalado ? (TSN)

 

consulte também:

http://forum.imasters.com.br/index.php...0&hl=oracle

Compartilhar este post


Link para o post
Compartilhar em outros sites

- qual versão do ODAC (Oracle Data Access Components) ?

 

 

 

comentário

 

Windows 2000, xp, 2003, seven

Apache 2.2.11

PHP 5.2.9-2

ODAC 11.1.0621

 

no phpinfo() verifique

Imagem Postada

 

e também verifique a tabela "Enviroment"

 

Imagem Postada

 

Na diretiva "Path", deve conter o diretório da library ODAC.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nao consegui localizar, creio que nao esta instalado.

Na maquina cliente e o oracle 8.1 que e a mesma do servidor de banco de dados.

 

Environment

Variable --- Value

Path --- C:\oracle\ora81\bin;C:\Program Files\Oracle\jre\1.1.7\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\MySQL\MySQL Server 5.1\bin;C:\php5;C:\php

 

- qual versão do ODAC (Oracle Data Access Components) ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu baixei esse arquivo do site da oracle - instantclient-basic-win32-11.1.0.7.0

Vi o link que você me passou do php.net, mas nao entendi de como realizar a instalacao do arquivo baixado do site da oracle.

 

 

Necessita ter ao menos o Instant Client instalado senão não funcionará..

 

Isso está escrito no manual do PHP, no link que postei no post N 9.

http://jp.php.net/manual/pt_BR/oci8.requirements.php

 

após instalação é necessário recarregar as variáveis de Ambiente.

Para isso, reinicie o PC.

Compartilhar este post


Link para o post
Compartilhar em outros sites

ok.

vou mostrar um link do site Oracle.

 

para adiantar:

 

1. cadastre-se no site da Oracle para obter login e senha, pois eh necessario autenticar no site da Oracle para fazer o download.

2. certifique-se de possuir todos os updates importantes do sistema operacional.

3. certifique-se de possuir o .Net instalado.

 

quando concluir esses passos, avise para continuarmos.

 

a instalação realmente requer um pouco de experiencia, entretanto, eh simples de fazer.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok. Hinom.

O server ja esta atualizado, aguardo o seu retorno.

 

Abracos.

 

ok.

vou mostrar um link do site Oracle.

 

para adiantar:

 

1. cadastre-se no site da Oracle para obter login e senha, pois eh necessario autenticar no site da Oracle para fazer o download.

2. certifique-se de possuir todos os updates importantes do sistema operacional.

3. certifique-se de possuir o .Net instalado.

 

quando concluor esses passos, avise para continuarmos.

 

a instalacao realmente requer um pouco de experiencia, entretanto, eh simples de fazer.

Compartilhar este post


Link para o post
Compartilhar em outros sites

1. Acesse o link

http://www.oracle.com/technology/software/...pnet/index.html

 

2. Escolha a opção mais leve

"Oracle 11g ODAC 11.1.0.6.21"

http://www.oracle.com/technology/software/...t/utilsoft.html

 

3. Leia os termos de uso e clique no checkbox

"YES, I accept the License Terms and Export Restrictions and I acknowledge that I have reviewed and understood the agreement and agree to use the language I selected in entering into this agreement."

 

Em seguida, clique sobre o botão "I Accept"

 

4. Clique sobre o link

http://download.oracle.com/otn/other/ole-o...ODAC1110621.zip

É necessário estar logado no site da Oracle.

Caso não esteja logado, será requisitado login e senha para prosseguir

 

 

INSTALAÇÃO

 

1. Descompacte os arquivos (.zip)

 

2. Execute "setup.exe"

 

3. Siga os passos da instalação

 

Nas opções de recursos a instalar, escolha somente os componentes que realmente necessita.

Se não pretende utilizar .NET, desmarque todas as opçoes .NET

 

[ ] Oracle Providers for ASP.NET 11.1.0.6.20

[ ] Oracle Data Provider for .NET 2.0 11.1.0.6.20

[ ] Oracle Data Provider for .NET 1.x 11.1.0.6.20

[ ] Oracle Database Extensions for .NET 2.0 11.1.0.6.20 -- for upgrade only

[ ] Oracle Database Extensions for .NET 1.x 11.1.0.6.20 -- for upgrade only

[X] Oracle Provider for OLE DB 11.1.0.6.20

[X] Oracle Objects for OLE 11.1.0.6.20

[X] Oracle ODBC Driver 11.1.0.6.0

[X] Oracle Services for Microsoft Transaction Server 11.1.0.6.0

[X] Oracle SQL*Plus 11.1.0.6.0

[X] Oracle Instant Client 11.1.0.6.0

 

O item mais importante é o último, "Oracle Instant Client 11.1.0.6.0 ".

Para evitar quaisquer tipos de conflitos, selecione todos os itens assinalados com [X] acima.

Quanto menos itens desnecesários instalar, melhor para o desempenho do sistema, espaço em disco e menor probabilidade de erros durante a instalação.

Se precisar dos outros itens, instale-os posteriormente um por um.

 

Prossiga a instalação.

Caso apareça algum erro ou alerta do instalador, escolha "ignorar/continuar".

Espere a instalação concluir.

Deverá aparecer um botão "concluído/finalizado".

 

Após isso, reinicie o Sistema Operacional

 

Configuração do PHP

Recapitulando a configuração do PHP,

 

No arquivo php.ini, ative "php_oci8.dll".

Não há necessidade em usar "php_oracle.dll". Desative caso exista.

 

Reinicie o Apache e execute phpinfo();

obs: certifique-se de ter editado o php.ini correto e também de ter especificado os paths corretos para os diretórios.

 

Execute phpinfo(); e veja se aparece a tabela OCI8

 

Faça mais um teste:

oci.php

<?php

if( function_exists( 'oci_connect' ) )
{
	echo time();
}

?>
Deverá imprimir na tela a data e hora atual em formato timestamp

 

 

Faça o mesmo com a configuração do IIS e os mesmos testes também.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Em um certo momento da instalação solicita qual é a porta. Eu não modifiquei.

Estou aguardando o terminio da instalação.

 

OBS.: Não sai dessa tela:

Instalação Oracle

 

Até mais.

 

1. Acesse o link

http://www.oracle.com/technology/software/...pnet/index.html

 

2. Escolha a opção mais leve

"Oracle 11g ODAC 11.1.0.6.21"

http://www.oracle.com/technology/software/...t/utilsoft.html

 

3. Leia os termos de uso e clique no checkbox

"YES, I accept the License Terms and Export Restrictions and I acknowledge that I have reviewed and understood the agreement and agree to use the language I selected in entering into this agreement."

 

Em seguida, clique sobre o botão "I Accept"

 

4. Clique sobre o link

http://download.oracle.com/otn/other/ole-o...ODAC1110621.zip

É necessário estar logado no site da Oracle.

Caso não esteja logado, será requisitado login e senha para prosseguir

 

 

INSTALAÇÃO

 

1. Descompacte os arquivos (.zip)

 

2. Execute "setup.exe"

 

3. Siga os passos da instalação

 

Nas opções de recursos a instalar, escolha somente os componentes que realmente necessita.

Se não pretende utilizar .NET, desmarque todas as opçoes .NET

 

[ ] Oracle Providers for ASP.NET 11.1.0.6.20

[ ] Oracle Data Provider for .NET 2.0 11.1.0.6.20

[ ] Oracle Data Provider for .NET 1.x 11.1.0.6.20

[ ] Oracle Database Extensions for .NET 2.0 11.1.0.6.20 -- for upgrade only

[ ] Oracle Database Extensions for .NET 1.x 11.1.0.6.20 -- for upgrade only

[X] Oracle Provider for OLE DB 11.1.0.6.20

[X] Oracle Objects for OLE 11.1.0.6.20

[X] Oracle ODBC Driver 11.1.0.6.0

[X] Oracle Services for Microsoft Transaction Server 11.1.0.6.0

[X] Oracle SQL*Plus 11.1.0.6.0

[X] Oracle Instant Client 11.1.0.6.0

 

O item mais importante é o último, "Oracle Instant Client 11.1.0.6.0 ".

Para evitar quaisquer tipos de conflitos, selecione todos os itens assinalados com [X] acima.

Quanto menos itens desnecesários instalar, melhor para o desempenho do sistema, espaço em disco e menor probabilidade de erros durante a instalação.

Se precisar dos outros itens, instale-os posteriormente um por um.

 

Prossiga a instalação.

Caso apareça algum erro ou alerta do instalador, escolha "ignorar/continuar".

Espere a instalação concluir.

Deverá aparecer um botão "concluído/finalizado".

 

Após isso, reinicie o Sistema Operacional

 

Configuração do PHP

Recapitulando a configuração do PHP,

 

No arquivo php.ini, ative "php_oci8.dll".

Não há necessidade em usar "php_oracle.dll". Desative caso exista.

 

Reinicie o Apache e execute phpinfo();

obs: certifique-se de ter editado o php.ini correto e também de ter especificado os paths corretos para os diretórios.

 

Execute phpinfo(); e veja se aparece a tabela OCI8

 

Faça mais um teste:

oci.php

<?php

if( function_exists( 'oci_connect' ) )
{
	echo time();
}

?>
Deverá imprimir na tela a data e hora atual em formato timestamp

 

 

Faça o mesmo com a configuração do IIS e os mesmos testes também.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa noite Hinom!

Coloquei o seguinte codigo:

<?php

if( function_exists( 'oci_connect' ) )
{
	echo time();
}

?>
A resposta foi essa:

1243283878

 

Continua dando esse erro:

Warning: fopen(c:/inetpub/mti_prod/logs/mti_prod.log) [function.fopen]: failed to open stream: No such file or directory in C:\Inetpub\wwwroot\mti_dev\htdocs\log.php on line 42

 

Warning: fwrite(): supplied argument is not a valid stream resource in C:\Inetpub\wwwroot\mti_dev\htdocs\log.php on line 43

 

Warning: fclose(): supplied argument is not a valid stream resource in C:\Inetpub\wwwroot\mti_dev\htdocs\log.php on line 44

 

Fatal error: Call to undefined function ora_logon() in C:\Inetpub\wwwroot\mti_dev\htdocs\queryOracle.php on line 12

 

 

Pagina: queryOracle.php

<?php
require_once 'ultimaFuncao.php';
require_once 'programaConf.php';
require_once 'morrer.php';

function queryOracle($query){
	//retorna array assoc
	global $vantive;	
	$conexao = ora_logon("{$vantive["login"]}@{$vantive["banco"]}",$vantive["senha"]);
	if( !$conexao )
		morrer('Erro em ora_logon: ' . ora_error());
	$cursor = ora_open($conexao);
	if( !$cursor )
		morrer('Erro em ora_open: ' . ora_error());
	$result = ora_parse($cursor,$query);
	$result = ora_exec($cursor);

	while(ora_fetch_into($cursor,$coluna[],ORA_FETCHINTO_NULLS|ORA_FETCHINTO_ASSOC)){}

	//if( ora_error($cursor) ) echo ora_error($cursor);
	//if( ora_error($conexao) ) echo ora_error($conexao);

	ora_close($cursor);
	ora_logoff($conexao);

	//if( count($coluna) ) array_pop($coluna); //tira um item vazio do final
	
	return $coluna;
}

?>

 

 

 

Em um certo momento da instalação solicita qual é a porta. Eu não modifiquei.

Estou aguardando o terminio da instalação.

 

OBS.: Não sai dessa tela:

Instalação Oracle

 

Até mais.

 

1. Acesse o link

http://www.oracle.com/technology/software/...pnet/index.html

 

2. Escolha a opção mais leve

"Oracle 11g ODAC 11.1.0.6.21"

http://www.oracle.com/technology/software/...t/utilsoft.html

 

3. Leia os termos de uso e clique no checkbox

"YES, I accept the License Terms and Export Restrictions and I acknowledge that I have reviewed and understood the agreement and agree to use the language I selected in entering into this agreement."

 

Em seguida, clique sobre o botão "I Accept"

 

4. Clique sobre o link

http://download.oracle.com/otn/other/ole-o...ODAC1110621.zip

É necessário estar logado no site da Oracle.

Caso não esteja logado, será requisitado login e senha para prosseguir

 

 

INSTALAÇÃO

 

1. Descompacte os arquivos (.zip)

 

2. Execute "setup.exe"

 

3. Siga os passos da instalação

 

Nas opções de recursos a instalar, escolha somente os componentes que realmente necessita.

Se não pretende utilizar .NET, desmarque todas as opçoes .NET

 

[ ] Oracle Providers for ASP.NET 11.1.0.6.20

[ ] Oracle Data Provider for .NET 2.0 11.1.0.6.20

[ ] Oracle Data Provider for .NET 1.x 11.1.0.6.20

[ ] Oracle Database Extensions for .NET 2.0 11.1.0.6.20 -- for upgrade only

[ ] Oracle Database Extensions for .NET 1.x 11.1.0.6.20 -- for upgrade only

[X] Oracle Provider for OLE DB 11.1.0.6.20

[X] Oracle Objects for OLE 11.1.0.6.20

[X] Oracle ODBC Driver 11.1.0.6.0

[X] Oracle Services for Microsoft Transaction Server 11.1.0.6.0

[X] Oracle SQL*Plus 11.1.0.6.0

[X] Oracle Instant Client 11.1.0.6.0

 

O item mais importante é o último, "Oracle Instant Client 11.1.0.6.0 ".

Para evitar quaisquer tipos de conflitos, selecione todos os itens assinalados com [X] acima.

Quanto menos itens desnecesários instalar, melhor para o desempenho do sistema, espaço em disco e menor probabilidade de erros durante a instalação.

Se precisar dos outros itens, instale-os posteriormente um por um.

 

Prossiga a instalação.

Caso apareça algum erro ou alerta do instalador, escolha "ignorar/continuar".

Espere a instalação concluir.

Deverá aparecer um botão "concluído/finalizado".

 

Após isso, reinicie o Sistema Operacional

 

Configuração do PHP

Recapitulando a configuração do PHP,

 

No arquivo php.ini, ative "php_oci8.dll".

Não há necessidade em usar "php_oracle.dll". Desative caso exista.

 

Reinicie o Apache e execute phpinfo();

obs: certifique-se de ter editado o php.ini correto e também de ter especificado os paths corretos para os diretórios.

 

Execute phpinfo(); e veja se aparece a tabela OCI8

 

Faça mais um teste:

oci.php

<?php

if( function_exists( 'oci_connect' ) )
{
	echo time();
}

?>
Deverá imprimir na tela a data e hora atual em formato timestamp

 

 

Faça o mesmo com a configuração do IIS e os mesmos testes também.

Compartilhar este post


Link para o post
Compartilhar em outros sites

A ora_logon é da oracle (no seu caso php_oracle.dll).

Ou você instala ela direitinho,ou muda as funções que está usando.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Continua dando esse erro:

Warning: fopen(c:/inetpub/mti_prod/logs/mti_prod.log) [function.fopen]: failed to open stream: No such file or directory in C:\Inetpub\wwwroot\mti_dev\htdocs\log.php on line 42

esse erro já não tem nada a ver com oracle..

 

a mensagem de erro diz que não encontrou o caminho do arquivo especificado

cerifique-se de que o arquivo existe e de que a nomenclatura do caminho está correta (letra minuscula, maiúscula, espaço, etc..)

 

"ora_logon" é da biblioteca "oracle"

comentei duas ou 3 vezes acima que não precisa usar. Desative-a.

 

utilize o OCI8

 

no repositório de bibliotecas PECL tem uma classe DB para oci8. Utilize-a ou cria sua própria classe.

 

http://pecl.php.net

Compartilhar este post


Link para o post
Compartilhar em outros sites

Preciso de ajuda para colocar o código abaixo de ORA para OCI

Desde já agradeço.

<?php
require_once 'ultimaFuncao.php';
require_once 'programaConf.php';
require_once 'morrer.php';

function queryOracle($query){
	//retorna array assoc
	global $vantive;	
	$conexao = ora_logon("{$vantive["login"]}@{$vantive["banco"]}",$vantive["senha"]);
	if( !$conexao )
		morrer('Erro em ora_logon: ' . ora_error());
	$cursor = ora_open($conexao);
	if( !$cursor )
		morrer('Erro em ora_open: ' . ora_error());
	$result = ora_parse($cursor,$query);
	$result = ora_exec($cursor);

	while(ora_fetch_into($cursor,$coluna[],ORA_FETCHINTO_NULLS|ORA_FETCHINTO_ASSOC)){}

	//if( ora_error($cursor) ) echo ora_error($cursor);
	//if( ora_error($conexao) ) echo ora_error($conexao);

	ora_close($cursor);
	ora_logoff($conexao);

	//if( count($coluna) ) array_pop($coluna); //tira um item vazio do final
	
	return $coluna;
}

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Porque está dando esse erro:

Parse error: parse error in C:\Inetpub\wwwroot\mti_dev\htdocs\queryOracle.php on line 14

 

1   <?php
2   require_once 'ultimaFuncao.php';
3   require_once 'programaConf.php';
4   require_once 'morrer.php';
5
6   function queryOracle($query){
7	//retorna array assoc
8
9	global $vantive;	//vantiveConf.php
10
11	$conexao = ocilogon("{$vantive["login"]}@{$vantive["banco"]}",$vantive["senha"]);
12	if( !$conexao )
13		morrer('Erro em ocilogon: ' . ocierror());
14	[b]$cursor = ocilogon(($conexao);[/b]
15	if( !$cursor )
16		morrer('Erro em ocilogon: ' . ocierror());
17
18	$result = ociparse($cursor,$query);
19	$result = ociexecute($cursor);
20
21	while(ocifetchinto($cursor,$coluna[],OCI_RETURN_NULLS|OCI_ASSOC)){}
22
23	//if( ora_error($cursor) ) echo ora_error($cursor);
24	//if( ora_error($conexao) ) echo ora_error($conexao);
25
26	// oci_close($cursor);
27	ocilogoff($conexao);
28
29	//if( count($coluna) ) array_pop($coluna); //tira um item vazio do final
30	
31	return $coluna;
32	}
33
34	?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

parse error indica, na maioria dos casos, erro de sintaxe

 

veja, há um parentese a mais

$cursor = ocilogon(($conexao);

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.