Jump to content
Fórum Script Brasil
  • 0

Refresh Com Agendador De Tarefas


Guest --Andrea --

Question

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 to comment
Share on other sites

6 answers to this question

Recommended Posts

  • 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 to comment
Share on other 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 to comment
Share on other 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 to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152k
    • Total Posts
      651.5k
×
×
  • Create New...