Jump to content


Photo

Erro: Object Of Class Requerimento Could Not Be Converted To String In


  • Faça o login para participar
2 replies to this topic

#1 look66

look66

    Normal

  • Usuários
  • 108 posts
  • Sexo:Não informado

Posted 11/09/2012, 12:48

Estou com o seguinte problema galera criei a seguinte function
public function insereStatus($codRequerimento, $status)
{
   $statusGeral = explode(",", $status);
        
   $insereStatus = new banco();
   for($i = 0; $i < count($statusGeral); $i++)
   {
      $insereStatus->insere("atestado.tb_andamento","cod_requerimento, cod_status, dat_status","$codRequerimento, $statusGeral[$i], CURRENT_TIMESTAMP", "");    
      usleep(500000);
   }
}

porém quando vai executar da este erro:
Catchable fatal error: Object of class Requerimento could not be converted to string in C:\ms4w\Apache\htdocs\atestado_new\class\Requerimento.class.php on line 30

A linha 30 contém o seguinte script:
$insereStatus->insere("atestado.tb_andamento","cod_requerimento, cod_status, dat_status","$codRequerimento, $statusGeral[$i], CURRENT_TIMESTAMP", "");


Analizando o problema melhor eu verifiquei o seguinte:

a variavel $codRequerimento recebe um object de uma função olhem o script:
/**
 * Esta function vem da classe Requerimento.
 */     
public function selecionaUltimoRequerimentoEmBanco()
{
   $codUltimoRequerimento;
        
   $selecionaUltimoRequerimentoEmBanco = new banco();
   $selecionaUltimoRequerimentoEmBanco=$selecionaUltimoRequerimentoEmBanco->seleciona(
   "atestado.tb_requerimento_cod_requerimento_seq","last_value","","","","","","");
  
   while($campos=pg_fetch_array($selecionaUltimoRequerimentoEmBanco))
   {
      extract($campos);
      $codUltimoRequerimento = $last_value;
   }
    
   return $codUltimoRequerimento;
}


$codRequerimento = new Requerimento();
$codRequerimento->selecionaUltimoRequerimentoEmBanco();

caso eu queria imprimir $codRequerimento da esta menssagem de erro:
Catchable fatal error: Object of class Requerimento could not be converted to string in C:\ms4w\Apache\htdocs\atestado_new\class\Requerimento.class.php

porém se eu usar um serialize();
echo serialize ($codRequerimento)

não esta retornando um inteiro esta retornando isso aqui:
2:"Requerimento":8:{s:18:"Requerimentotipo";s:0:"";s:29:"RequerimentonumeroProtocolo";s:0:"";s:18:"Requerimentodata";s:0:"";s:28:"RequerimentocodInteressado";i:0;s:35:"RequerimentocodResponsavelTecnico";i:0;s:23:"RequerimentocodImovel";i:0;s:25:"RequerimentoatualStatus";a:1:{i:0;s:0:"";}s:29:"RequerimentohistoricoStatus";a:1:{i:0;s:0:"";}}

não faço ideia porque retorna isso

se eu fazer um cast em $codRequerimento
echo (int)$codRequerimento;
ele retorna 1 sendo que ele tem que retornar 93.

Edição feita por: look66, 11/09/2012, 12:51.


#2 Squall Robert

Squall Robert

    Mr. Squall - Mais Carne do que Osso (hihi)

  • Usuários
  • 507 posts
  • Sexo:Masculino
  • Localidade:Curitiba
  • Interesses:Php ... Php...Php

Posted 11/09/2012, 13:59

da um print_r na variavel antes de serialzar e cola ai....
<?php

$squall = new Squall();

$squall->Ajudando("você");

$resultado = $squall->solucao();  ?>

#3 look66

look66

    Normal

  • Usuários
  • 108 posts
  • Sexo:Não informado

Posted 13/09/2012, 08:44

Olha soh, dei print_r na variavel $codRequerimento retorno isso:
Requerimento Object ( [tipo:private] => [numeroProtocolo:private] => [data:private] => [codInteressado:private] => 0 [codResponsavelTecnico:private] => 0 [codImovel:private] => 0 [atualStatus:private] => Array ( [0] => ) [historicoStatus:private] => Array ( [0] => ) )

Cara eu devo ta ficando velho mesmo, o problema que ta acontecendo é q eu to passando o object como parâmentro, ao invéz de atribuit o object a uma variavel !

Agora deu certo, obrigado pela ajuda !




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq