Enviar e-mail automaticamente de um servidor Windows

3 respostas
windowsphpemail
M

Tenho um código que envia um e-mail através do PHPMailer. Quero que ele envie esse e-mail todos os dias às 10 horas da manhã.

Ele está em um servidor Windows. Então fui lá no Agendador de Tarefas do Windows e criei uma tarefa para executar meu código que envia o e-mail, como vi nesse tutorial. E essa tarefa é executada todo dia as 10 horas (já verifiquei, o código é mesmo executado).

O problema é que o e-mail não é enviado quando a tarefa é executada automaticamente. Mas quando eu executo o script PHP manualmente ele envia o e-mail.

Queria saber o que pode ser.

A máquina onde o código está é WIn 7, então segui o seguinte tutorial:

In Windows 7/server 2005/2008
No need to copy or install anything(Already PHP is installed on the server)

Create a task give Running time in Trigger setting. Then in Action setting option in the “Program/Script” command textbox type

C:\xampp\php\php.exe
and in the Add arguments (optional) type

-f c:/xampp/htdocs/mycron.php

OBS: percebi também que o fopen() não funciona quando a tarefa é executada. Tentei fazer a tarefa criar um arquivo txt e não foi.

3 Respostas

D

O que você poderia implementar:

Um Arquivo de LOG pegando os erros se houver e salvando nesse Texto, no dia seguinte dê uma olhada se houve algum erro de envio, se não, pode ser o servidor que está bloqueando o envio do email!

Servidor de E-mail é um p … no s… mesmo!

Tipo: impossivel saber o que acontece nesse script!

M

Obrigado pela resposta Dragoon.
Não é o servidor. Como disse, quando executo manualmente funciona.

D

Se não pode afirmar isso com certeza, pode?

Uma dica, quando é um Web que envia ele tem cabeçalhos e quando é serviços talvez falte algum! vai por mim já me bati com esses servidores de e-mail.

Crie o que eu te disse o próprio PHPMailter pode utilizar um try catch assim:

} catch (phpmailerException $e) {
      echo $e->errorMessage(); 
}

Guarde esse erro se houver num arquivo de texto, Ok, depois nos conte.

Criado 4 de abril de 2017
Ultima resposta 4 de abr. de 2017
Respostas 3
Participantes 2