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 Dominando o Adianti Framework

O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado!


Dominando o Adianti Framework 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.