Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

ghenschel

Verificar se e-mail foi realmente enviado

Recommended Posts

Olá galera,

é o seguinte.

tenho um sistema de envio de e-mails.

Só que o cliente quer saber se o e-mail foi realmente enviado (se não voltou e tal - tipo: e-mail inexistente ou caixa cheia)

 

alguém sabe como fazer isso ?

 

abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

A função mail do PHP retorna uma booleano, para saber se foi executada com sucesso. (isso não garante se o destinatário irá receber o e-mail).

 

Para o caso de e-mail inexistente pesquise por dns reverso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pelo método normal de envio de e-mail não tem como saber se o e-mai foi entregue ou não.

 

Até por que o e-mail pode demorar algumas horas pra ser entregue depende do tamanho da fila de e-mails no remetente e da velocidade e disponibilidade do servidor do destinatário.

 

Até onde eu sei: O único modo de saber se um e-mail voltou, é: depois de algum tempo, acessar via POP3 ou IMAP a caixa de entrada da conta pela qual o e-mail foi enviado e buscar nas mensagens recebidas um e-mail com mensagem de falha informando que o e-mail para X destinatário não pode ser entregue. E, pode apostar, é bastante trabalho pra uma coisa provavelmente não tão nececessária.

 

http://forum.imasters.com.br/public/style_emoticons/default/bye1.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Um amigo meu disse que tem alguma coisa de MX ou algo parecido.

 

o que é isso ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Um amigo meu disse que tem alguma coisa de MX ou algo parecido.

 

o que é isso ?

A Wikipédia responde:

http://pt.wikipedia.org/wiki/Mx_record

 

disseram pra ele que se o servidor tivesse esse tal MX dava de fazer isso.

mas pelo que vi não dá.

 

abraço galera

Compartilhar este post


Link para o post
Compartilhar em outros sites

MX record é a zona DNS para servidores de email

 

Se um determinado server não possuir uma zona MX, provavelmente o email não é válido, pois se o MX não existe, então o email não existe..

 

 

para detectar basta usar o comando nslookup

 

 

escopo

nslookup -type=MX DOMAIN_NAME

em negrito, o nome DNS do domínio

 

exemplo prático

nslookup -type=MX imasters.com.br

 

se pretende enviar um email para info@dominio.qualquer, por exemplo,

certifique-se de que o domínio existe e possui MX record, usando o nslookup

 

Essa técnica verifica apenas se o domínio está online. Não garante que o email existe ou que recebeu a mensagem.

O método também é inseguro, pois um servidor pode estar temporariamente inacessível, mesmo que por um ou dois segundos.

 

 

Quanto ao propósito principal, não há como saber automaticamente se um email foi recebido pelo destinatário.

Se fosse permitido fazer isso, um spammer poderia facilmente obter milhões de emails válidos sem consentimento de seus respectivos donos.

 

Uma boa prática para saber se o destinatário recebeu é pedindo-o para que responda ao email, por meio de um link ou um simples "reply".

 

Há outros métodos eficientes como propagação de vírus e correntes de mensagens, por exemplo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.