Ir para conteúdo
Fórum Script Brasil
  • 0

Refresh Com Agendador De Tarefas


Guest --Andrea --

Pergunta

Guest --Andrea --

eu uso cron ou agendador de tarefas pra enviar os emails da minha mala direta, daí tive que alterar o sistema pra a cada determinado tempo dar um refresh na página e assim independente da quantidade de emails pra serem enviados o tempo limite de execução do script nunca estourar.

a parada tá funcionando, se eu executo o arquivo ele manda os emails corretamente, dá refresh na página sem problemas, só que quando eu mando o agendador executar a tal página ele só executa a primeira vez, não dá o refresh como deveria.

sei que poderia por exemplo mandar o agendador executar o script de 1 em 1 min mas o lance é que pelo agendador eu não tenho o controle que tenho pelo meu script que só continua sendo executado enquanto tem emails pra serem enviados ou que só executa se tiverem e-mails a serem enviados, enfim pelo agendador eu só queria mesmo mandar executar a página de madrugada.

eu uso isso no final do loop pra dar o refresh na página:

echo "&lt;script language=javascript>window.location.href='corn_envio.php';</script>";

mas como disse só dá refresh se eu mesma executar o arquivo e não dá pelo agendador .

Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0

Hunnn... se o servidor estiver rodando em safe mode realmente não vai funcionar...

Opção 2... usa a função sleep para enviar um número X de e-mails, e ai manda o script dormir alguns segundos, e faça isso até enviar tudo... com o sleep, quando o script "volta" do sono o time out é zerado...

Link para o comentário
Compartilhar em outros sites

  • 0
Guest --Andrea --

meu script tem sleep.

ele funciona assim: manda tantas mensagens

pega o id do ultimo email enviado e salva no bd

dá um sleep

dá um refresh na pagina voltando a enviar a partir do id salvo no banco de dados

dai vai fazendo o loop sleep e refresh ate acabarem os emails do banco de dados

mesmo usando o sleep ele dá erro, se eu tiro o set_time_limit não chega nem a 2 min mas com ele vai até 6 min de execução e dá erro mesmo com o sleep, por isso resolvi colocar um refresh na página o que resolveu o problema mas agora não funciona mais com o agendador :blink:

Link para o comentário
Compartilhar em outros sites

  • 0

O problema ocorre porque o cron não é uma janela do navegador... por isso o refresh dá pau...

Uma outra alternativa (se o host permitir) é você jogar nas pasta onde estiver o script um arquivo chamado php.ini e setar nele o timeout...

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      652k
×
×
  • Criar Novo...