Lançado Adianti Framework 7.6!
Clique aqui para saber mais
Erro com call_user_func_array e foreach? Olá pessoa, após publicar meu sistema na locaweb tenho encontrado algumas mensagem que não apresentava antes quando o sistema estava local (versão 5.6). Warning: call_user_func_array() expects parameter 1 to be a valid callback, class 'AdiantiWidgetBaseTElement' does not have a method 'setLayout' in /home/storage/a/68/e1/dominio/public_html/dominio/lib/adianti/widget/form/TField.p...
IV
Erro com call_user_func_array e foreach?  
Olá pessoa, após publicar meu sistema na locaweb tenho encontrado algumas mensagem que não apresentava antes quando o sistema estava local (versão 5.6).

Warning: call_user_func_array() expects parameter 1 to be a valid callback, class 'AdiantiWidgetBaseTElement' does not have a method 'setLayout' in /home/storage/a/68/e1/dominio/public_html/dominio/lib/adianti/widget/form/TField.php on line 102

  1. <?php 
  2. public function __call($method$param)
  3.     {
  4.        return call_user_func_array( array($this->tag$method), $param );
  5.     }
  6. ?>


Warning: Invalid argument supplied for foreach() in /home/storage/a/68/e1/dominio/public_html/dominio/lib/adianti/widget/form/TForm.php on line 346

  1. <?php
  2.         foreach ($this->fields as $name => $field)
  3.         {
  4.             if ($name// labels don't have name
  5.             {
  6.                 if (isset($object->$name))
  7.                 {
  8.                     $field->setValue($object->$name);
  9.                 }
  10.             }
  11.         }
  12. ?>


Warning: Invalid argument supplied for foreach() in /home/storage/a/68/e1/dominio/public_html/dominio/lib/adianti/wrapper/BootstrapFormBuilder.php on line 404
  1. <?php
  2. foreach ($this->tabcontent as $tab => $rows)
  3.         {
  4.             $tabpanel = new TElement('div');
  5.             $tabpanel->{'role'}  = 'tabpanel';
  6.             $tabpanel->{'class'} = 'tab-pane ' . ( ($tab_counter == $this->current_page) ? 'active' '' );
  7.             $tabpanel->{'style'} = 'padding:10px; margin-top: -1px;';
  8. ?>



se eu comentar a linha do return o erro desaparece, mas creio que não seja a forma correta de resolver.


Observei que esses erros acontecem nas classes que eu utilizo "TSession"

Curso completo Meu Negócio Pronto
Use para si, ou transforme em um negócio: Inclui aulas e códigos-fontes
Gestor de conteúdo (SITE) + Loja Virtual (E-Commerce) + Emissor de Notas para infoprodutos


Meu negócio pronto Quero me inscrever agora!

Comentários (3)


IV

Galera não sei se fiz certo mas, eu usei um IF para ver se o parametro não é vazinho.

  1. <?php
  2. if (!empty($param)){
  3.   ...
  4. ?
  5. ?>


Tem outra forma correta de resolver esse problema?
CS

Vi al algum lugar que alguém estava passando pelo mesmo problema e era a versão do php da Locaweb. Aí parece que pediu para atualizar para uma versão mais nova e resolveu...

[]'s
NR

Seu servidor local está configurado para exibir os erros?

O primeiro erro diz que você está chamando a função setLayout em um objeto TElement, mas essa função não existe. Poste o código aqui qualquer coisa.