Erro ao imprimir resultado de base FireBird

Enviada por Cleylerson Lucio 
Cleylerson Lucio
Erro ao imprimir resultado de base FireBird
09 de November de 2015 às 10:47AM
Olá pessoal.

Estou apredendo php e estou fazendo uns testes com o PHP + Firebird para acessar uma base Firebird aqui do trabalho e estou tendo problemas para listar os dados com o comando echo.

No comando ( echo $row->nome; ) aparece no navegador o erro: Notice: Undefined property: stdClass::$nome

Abaixo o script php completo:

<?php
$conexao = ibase_connect("localhost:c:/reswincs/resulth.fb","SYSDBA","masterkey");
$sql = "select first 3 codcliente,nome from cliente";
$resultado = ibase_query($conexao, $sql) or die(ibase_errmsg());

while ($row = ibase_fetch_object($resultado)) {

//imprimi as linhas na tela
echo $row->nome;
}

ibase_close($conexao);
?>

o Loop ocorre normalmente e acho que não há problema na conexão com o banco, pois, não ocorre erros na mesma, inclusive como consultei somente os tres primeiros registros ele faz o loop 3 vez e ocorre o erro tambem 3 vez, uma vez para cada vez que ele execute o comando ECHO.

Estou usando o servidor WEB "VertrigoServ" e já habilitei o modulo para interbase no php e no phpinfo o interbase aparece carregado. A versao do php é 5.5.28 e o interbase é o 2.1

desde já agradeço ao pessoal do forum.
Cleylerson Lucio
Re: Erro ao imprimir resultado de base FireBird
12 de November de 2015 às 01:44PM
Galera, fiz uma mudança e resolvi a questão. Ao invés de usar " while ($row = ibase_fetch_object($resultado)) " eu use " while ($row = ibase_fetch_row($resultado)) " e no echo ao inves de usar " echo $row->nome; " eu use " echo $row['0']; " sendo que o numero zero é o indice do array que representa o primeiro campo do meu SQL.

Abaixo como ficou o script php com a mudança!!!

<?php
$conexao = ibase_connect("localhost:c:/reswincs/resulth.fb","SYSDBA","masterkey");
$sql = "select first 3 codcliente,nome from cliente";
$resultado = ibase_query($conexao, $sql) or die(ibase_errmsg());

while ($row = ibase_fetch_row($query)) {

//imprimi as linhas na tela
echo $row['0']. "<br>";
echo $row['1']. "<br>";
}

ibase_free_result($query);
ibase_close($conexao);

?>

VALEU PESSOAL. ABRAÇO.
Você precisa estar logado no PHPBrasil.com para poder enviar mensagens para os nossos fóruns.

Faça o login aqui.