Autor Tópico: Utilizar comando "declare".. nao funciona!  (Lida 1851 vezes)

Alekiz

  • Visitante
Utilizar comando "declare".. nao funciona!
« Online: Setembro 03, 2009, 10:42:48 am »
Olá,
Estava tentando executar o comando declare num evento OnValidate de uma aplicação de controle, mas nao funciona. Por exemplo este código:

function tick_handler(){
     echo "tick_handler() called";
}

register_tick_function('tick_handler');

$a = 1;

declare(ticks=1){
  if ($a > 0) {
        $a += 2;
        print($a);
  }
}

O problema é que quando executa a linha register_tick_function('tick_handler'); esse erro me retorna: ctr_Gera_Sped_apl::Valida_campos() [function.ctr-Gera-Sped-apl-Valida-campos]: Unable to call tick_handler() - function does not exist
Reparei que na geração do fonte, o scriptcase declara essa função, mas declara após o evento OnValidate, por isso deste erro.
Ja tentei tambem pegar essa function e criar um método com o echo que tem aí, mas o método tambem é declarado bem depois do comando OnValidate, e gera o mesmo erro. Como faço pra poder usar esse declare? ou como faço pra que a função seja declarada antes do OnValidate?

o problema é, preciso chamar uma procedure no MySQL, que alimenta uma tabela, e ao mesmo tempo disparar um select para retornar a quantidade de linhas que esta inserindo nesta tabela.
Como essa procedure demora muito ( minimo de 1 hora ), o PHP retorna um timeout.

Alekiz

  • Visitante
Re: Utilizar comando "declare".. nao funciona!
« Responder #1 Online: Setembro 23, 2009, 04:42:06 pm »
Tudo bem, ninguem respondeu...
Masss...
após algumas "masturbações" no php, scriptcase, google... Descobri que o problema para a demora de execução era apenas configurar o apache.
Entrei nos arquivos la do apache, liberei a linha comentada indicando o arquivo http.conf (ou algo assim), e configurei um delay de 24 horas (em minutos) neste arquivo.
Agora minha aplicação fica 2.. 3.. 4 horas rodando, sem que apresente timeout do navegador!
=)
abraços a todos. espero que tenha ajudado