Ir para conteúdo

POWERED BY:

Arquivado

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

mestre fyoda

Cannot use object of type stdClass as array

Recommended Posts

Cannot use object of type stdClass as array

pq o erro ?

 

$select = "SELECT * from $bd";	$sql = ibase_query($db,$select) or die($select);while ($row = ibase_fetch_object ($sql)) {$resultado .= $row[$j];echo "$resultado";}

Compartilhar este post


Link para o post
Compartilhar em outros sites

$select = "SELECT * from $bd";

$sql = ibase_query($db,$select) or die($select);

 

$i=0;

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

$resultado .= $row[$i];

echo "$resultado";

$i++;

}

Compartilhar este post


Link para o post
Compartilhar em outros sites
entao Ferreira, eu tenho varias tabelas e variso campos , como eu faço isso automatico ?

Como estão suas tabelas? O nome dos campos que você vai pegar são os mesmos para todos os registros, certo?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Create Table `aqcad`( `CODCAD` VARCHAR (14),`TIPCAD` VARCHAR (2),`NOMCAD` VARCHAR (50),`QUACAD` INTEGER (4),`VENCAD` VARCHAR (14),`DATCAD` DATE (4));Create Table `aqopp`( `TIPOPP` VARCHAR (2),`SIGOPP` VARCHAR (3),`DESOPP` VARCHAR (20),`BOBOPP` VARCHAR (30),`BOOOPP` VARCHAR (60),`B1COPP` VARCHAR (30));

essa é a estrutura do meu bd, como eu poderia fazer para catar automatico ?

 

o ibase_fetch_row ja tentei mas nao consigo catar os dados do bd!

Compartilhar este post


Link para o post
Compartilhar em outros sites

$dbname = array("aqopp","aqcad");foreach ($dbname as $bd) {$select = "SELECT * from $bd";	$sql = ibase_query($db,$select) or die($select);$total_fields= ibase_num_fields($sql);$y=0; while( $bd = ibase_fetch_row($sql)) { $teste .= $bd[$i];$y++;  }} echo "$teste";

o codigo nao esta imprimindo em tela todas as tabelas, pq ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

$select = "SELECT * from $bd";

$sql = ibase_query($db,$select) or die($select);

 

$i=0;

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

$resultado .= $row[$i];

echo "$resultado";

$i++;

}

Para ser direto, já q você não está muito afim de blá blá blá (leia-se "aprender"):

while ($row = ibase_fetch_assoc ($sql)) {

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tinha um espaço a mais.

while ($row = ibase_fetch_assoc($sql)) {

Não está dando mensagem de erro não? Se você tem um ambiente de desenvolvimento, pode alterar o php.ini para mostrar os erros no próprio browser, em vez de enviar para o log do apache. Edite o php.ini e altere esta linha:

display_errors = On

Compartilhar este post


Link para o post
Compartilhar em outros sites

$dbname = array("aqopp","aqcad");foreach ($dbname as $bd) {$select = "SELECT * from $bd";	$sql = ibase_query($db,$select) or die($select);$total_fields= ibase_num_fields($sql);for ($j = 1; $j <= $total_fields; $j++)   {$select = "SELECT * from $bd";	$sql = ibase_query($db,$select) or die($select); if($banco = ibase_fetch_row($sql)) 	{ 	  $nome = $banco[$j]; 	  print("» $nome<br>"); 	echo "$j";	}    }//for	}//foreach

o codigo esta quase lá , o q esta acontecendo é o seguinte, ali no foreach ele deveria pegar as duas tabelas do banco de dados, mas esta apenas imprimindo os dados de uma das duas tabelas. Eu tenho quase certeja q o erro esta no foreach mas nao consigo enchergar aonde.

alguem poderia me ajudar ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

aparentemente nao tem erro no script

 

tenta fazer debug

 

sugiro que você coloque ELSE na condicional:

 

if($banco = ibase_fetch_row($sql))

{

$nome = $banco[$j];

print("» $nome

");

echo "$j";

}

 

ficaria assim:

 

if($banco = ibase_fetch_row($sql))

{

$nome = $banco[$j];

print("» $nome

");

echo "$j";

}else{

print("erro ".$j); }

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.