Array
(
    [0] => stdClass Object
        (
            [Votos_Balanceados] => 1
            [id] => 548918
            [titulo] => PHP com Firebird
            [dataCadastro] => DateTime Object
                (
                    [date] => 2016-03-18 17:14:52
                    [timezone_type] => 3
                    [timezone] => America/Sao_Paulo
                )

            [isFirstPost] => -1
            [idUsuario] => 269142
            [status] => A
            [isExample] => 
            [NomeUsuario] => William 
            [Apelido] => William (Devwilliam)
            [Foto] => 269142_20150809195205.jpg
            [Conteudo] => [quote]

Prezado Sr. Joaci:

1- Deixe de ser ignorante, "Fdp_Poa", é? Tu é o tipo de cara que não presta para a profissão, pelo visto;
2- Pedirei que os moderadores lhe apliquem alguma sanção por conta de sua falta de ética;
3- LEIA ao contrário de falar besteiras: tu dizes que eu cometi um erro absurdo, mas não percebe que o "A", no nome do banco, é, na verdade o ARTIGO (caso não tenha estudado português, é a primeira linguagem que o senhor deveria saber), na frase "A sintaxe do nome do arquivo, do nome do diretório ou do rótulo...". É óbvio que a mensagem saiu colada/concatenada com o caminho do arquivo.

Fico no aguardo da ajuda de alguém melhor intencionado.[/quote]


Prefiro acreditar que tenha sido mais um erro de digitação do colega "JOACI", já respondi e monitorei outros tópicos que ele participou e nunca presenciei desrespeito dele com outros integrantes.

Quanto a sua dúvida, o comando "SHOW TABLES" não vai funcionar, esse comando funciona apenas para ferramenta Isql!

No Firebird podemos listar tabelas via query com a instrução abaixo:

[code]
SELECT rdb$relation_name
FROM rdb$relations
WHERE rdb$view_blr is null
AND (rdb$system_flag is null OR rdb$system_flag = 0);
[/code] ) )

PHP com Firebird

Edcp_poa
   - 16 mar 2016

Prezados:
1- Preciso acessar dados de uma tabela (produtos) em um banco de dados Firebird 1.5;
2- Instalei o Firebird 1.5 em um Windows 7 x64, sem erros;
3- Utilizo o XAMPP e já habilitei, no Apache, a DLL responsável pela conexão com o Firebird;
4- Realizei o start do Apache, mas houve erro relacionado a instalação do fbclient.dll;
5- Fiz uso do seguinte artigo: https://wiki.php.net/internals/windows/libs/firebird para tentar configurar;
6- O erro continua acontecendo;
7- Quando acesso o index.php, o erro amostrado é o seguinte: "Fatal error: Call to undefined function ibase_connect() in C:\xampp\htdocs\teste_firebird\index.php on line 8"
8- Segue código (copiado de dirceuresende.com):
#Código

<?php
// Conecta no banco de dados
$hostname = "localhost:C:\xampp\htdocs\teste_firebird\banco\banco.gdb";
$usuario = "SYSDBA"; // Usuário padrão do Firebird
$senha = "masterkey"; // Senha padrão do Firebird
 
$conexao = ibase_connect( $hostname, $usuario, $senha ) or die( 'Erro ao conectar: ' . ibase_errmsg() );
 
$Arr_Dados = array();
 
$Ds_Query = "SELECT * FROM cliente";
$Ds_Retorno = ibase_query( $Ds_Query );
 
while ( $Ds_Linha_Banco = ibase_fetch_row( $Ds_Retorno ) )
{
    $Arr_Dados[] = $Ds_Linha_Banco;
}
 
var_dump($Arr_Dados);

9- Tentei de todas as formas registrar o fbcliend.dll, mas dá erro no Windows.
Agradeço a ajuda desde já.
Atenciosamente,
Edison Coelho.

Post mais votado

William (devwilliam)
   - 18 mar 2016


Citação:

Prezado Sr. Joaci:

1- Deixe de ser ignorante, "Fdp_Poa", é? Tu é o tipo de cara que não presta para a profissão, pelo visto;
2- Pedirei que os moderadores lhe apliquem alguma sanção por conta de sua falta de ética;
3- LEIA ao contrário de falar besteiras: tu dizes que eu cometi um erro absurdo, mas não percebe que o "A", no nome do banco, é, na verdade o ARTIGO (caso não tenha estudado português, é a primeira linguagem que o senhor deveria saber), na frase "A sintaxe do nome do arquivo, do nome do diretório ou do rótulo...". É óbvio que a mensagem saiu colada/concatenada com o caminho do arquivo.

Fico no aguardo da ajuda de alguém melhor intencionado.


Prefiro acreditar que tenha sido mais um erro de digitação do colega "JOACI", já respondi e monitorei outros tópicos que ele participou e nunca presenciei desrespeito dele com outros integrantes.

Quanto a sua dúvida, o comando "SHOW TABLES" não vai funcionar, esse comando funciona apenas para ferramenta Isql!

No Firebird podemos listar tabelas via query com a instrução abaixo:

#Código

SELECT rdb$relation_name
FROM rdb$relations
WHERE rdb$view_blr is null 
AND (rdb$system_flag is null OR rdb$system_flag = 0);

1
|
0

Joaci Gomes
   - 16 mar 2016

Provavelmente o usuário e a senha desse banco não seja mais a padrão, como especificado.

0
|
1

Lincoln Viana
   - 16 mar 2016

Na parte que tá assim:

// Conecta no banco de dados
$hostname = "localhost:C:\xampp\htdocs\teste_firebird\banco\banco.gdb";

Faz assim:
// Conecta no banco de dados
$hostname = "127.0.0.1:C:\xampp\htdocs\teste_firebird\banco\banco.gdb";

0
|
1

Edcp_poa
   - 17 mar 2016

Boa tarde, Sr. Joaci.

A conta (SYSDBA) e senha estão corretas. Já fiz este teste com o BDE.

Segue erro relacionado a DLL, ao iniciar o XAMPP.Erro relacionado à DLL (Clique na imagem para abrir em uma nova janela)

Obrigado e espero que possa me dar mais ajuda.

0
|
0

Edcp_poa
   - 17 mar 2016

Obrigado pela ajuda, Sr. Lincoln.

Infelizmente o problema não chega nem nessa parte, pois há um erro relacionado à engine que faz a conexão do PHP com o Firebird.

Novamente: a versão do Firebird é a 1.5.

Segue print do erro, após execução do script PHP.

Clique na imagem para abrir em uma nova janela

0
|
0

Edcp_poa
   - 17 mar 2016

Prezados:

Pesquisando, achei uma linha no arquivo php.ini que precisava ser descomentada e o novo erro na página é o que segue:

Clique na imagem para abrir em uma nova janela

Já substituí a linha 3 ($hostname = "localhost:C:\xampp\htdocs\teste_firebird\banco\banco.gdb";), modificando localhost por 127.0.0.1 e pelo IP dado pelo DHCP do roteador, mas sem sucesso.

Agradeço a ajuda desde já.

0
|
0

Joaci Gomes
   - 18 mar 2016


Citação:
Prezados:

Pesquisando, achei uma linha no arquivo php.ini que precisava ser descomentada e o novo erro na página é o que segue:

Clique na imagem para abrir em uma nova janela

Já substituí a linha 3 ($hostname = "localhost:C:\xampp\htdocs\teste_firebird\banco\banco.gdb";), modificando localhost por 127.0.0.1 e pelo IP dado pelo DHCP do roteador, mas sem sucesso.

Agradeço a ajuda desde já.


Meu amigo Fdp_Poa,

Dessa vez o erro é porque o nome do arquivo do banco está como *. gdbA

Att,

0
|
1

Edcp_poa
   - 18 mar 2016


Citação:

Citação:
Prezados:

Pesquisando, achei uma linha no arquivo php.ini que precisava ser descomentada e o novo erro na página é o que segue:

Clique na imagem para abrir em uma nova janela

Já substituí a linha 3 ($hostname = "localhost:C:\xampp\htdocs\teste_firebird\banco\banco.gdb";), modificando localhost por 127.0.0.1 e pelo IP dado pelo DHCP do roteador, mas sem sucesso.

Agradeço a ajuda desde já.


Meu amigo Fdp_Poa,

Dessa vez o erro é porque o nome do arquivo do banco está como *. gdbA

Att,


Prezado Sr. Joaci:

1- Deixe de ser ignorante, "Fdp_Poa", é? Tu é o tipo de cara que não presta para a profissão, pelo visto;
2- Pedirei que os moderadores lhe apliquem alguma sanção por conta de sua falta de ética;
3- LEIA ao contrário de falar besteiras: tu dizes que eu cometi um erro absurdo, mas não percebe que o "A", no nome do banco, é, na verdade o ARTIGO (caso não tenha estudado português, é a primeira linguagem que o senhor deveria saber), na frase "A sintaxe do nome do arquivo, do nome do diretório ou do rótulo...". É óbvio que a mensagem saiu colada/concatenada com o caminho do arquivo.

Fico no aguardo da ajuda de alguém melhor intencionado.

0
|
0

Edcp_poa
   - 18 mar 2016

Prezados:

Espero que isto sirva para muitos e que contribua com o Fórum. Na conexão, tratava-se de um erro simples: colocar duas contra barras, já que estou lidando com o Windows.

Novo código, com a conexão efetuada:
#Código

<!DOCTYPE html>
<html lang="pt-br">
    <head>
        <meta charset="UTF-8">
        <title>TESTE FIREBIRD</title>
    </head>
    <body>
        <?php
        // Conecta no banco de dados
        $hostname = "127.0.0.1:C:\xampp\htdocs\teste_firebird\banco\shop.gdb";
        $usuario = "SYSDBA"; // Usuário padrão do Firebird
        $senha = "masterkey"; // Senha padrão do Firebird

        $conexao = ibase_connect($hostname, $usuario, $senha) or die('<p>Código do erro: ' . ibase_errcode() . '</p><p>Mensagem de erro: <br>' . ibase_errmsg() . "</p>");

        $Arr_Dados = array();

        $Ds_Query = "SHOW TABLES;";
        $Ds_Retorno = ibase_query($Ds_Query);

        while ($Ds_Linha_Banco = ibase_fetch_row($Ds_Retorno)) {
            $Arr_Dados[] = $Ds_Linha_Banco;
        }

        var_dump($Arr_Dados);
        ?>
    </body>
</html>


Novo erro de retorno com query SHOW tables:
Clique na imagem para abrir em uma nova janela

Fico no aguardo das considerações dos amigos.

Obrigado.

0
|
0

Edcp_poa
   - 18 mar 2016


Citação:

Citação:

Prezado Sr. Joaci:

1- Deixe de ser ignorante, "Fdp_Poa", é? Tu é o tipo de cara que não presta para a profissão, pelo visto;
2- Pedirei que os moderadores lhe apliquem alguma sanção por conta de sua falta de ética;
3- LEIA ao contrário de falar besteiras: tu dizes que eu cometi um erro absurdo, mas não percebe que o "A", no nome do banco, é, na verdade o ARTIGO (caso não tenha estudado português, é a primeira linguagem que o senhor deveria saber), na frase "A sintaxe do nome do arquivo, do nome do diretório ou do rótulo...". É óbvio que a mensagem saiu colada/concatenada com o caminho do arquivo.

Fico no aguardo da ajuda de alguém melhor intencionado.


Prefiro acreditar que tenha sido mais um erro de digitação do colega "JOACI", já respondi e monitorei outros tópicos que ele participou e nunca presenciei desrespeito dele com outros integrantes.

Quanto a sua dúvida, o comando "SHOW TABLES" não vai funcionar, esse comando funciona apenas para ferramenta Isql!

No Firebird podemos listar tabelas via query com a instrução abaixo:

#Código

SELECT rdb$relation_name
FROM rdb$relations
WHERE rdb$view_blr is null 
AND (rdb$system_flag is null OR rdb$system_flag = 0);


Prezado Sr. William:

1- Muito obrigado pela pronta resposta. Mais um sinal de profissionalismo da DEVMEDIA.
2- Sobre o Sr. Joaci, não tenho a mesma opinião.
3- Me utilizei do site do Firebird, onde peguei uma query igual, ou semelhante. Muito obrigado por disponibilizá-la.
4- Consegui as informações que precisava e dou o tópico por encerrado. Como disse, colocarei, quando possível, em meu blog, um passo a passo para ajudar aqueles que tiveram o mesmo problema.

Um grande abraço e, mais uma vez, parabéns pelo site.

Atenciosamente,

Edcp_poa

0
|
0

William (devwilliam)
   - 18 mar 2016

Compartilhe conosco o link do seu blog por gentileza, estou finalizando o tópico!

0
|
0