Ir para conteúdo

POWERED BY:

Arquivado

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

AndreLC90

PHP - Como Saber Que o User Abriu a Newsletter no E-mail

Recommended Posts

Boa tarde a todos,

 

A minha dúvida é que estou a actualizar a lista de contactos que tenho para envio de newsletter e gostaria de implementar um script para saber quais os utilizadores que abrem realmente a newsletter no seu e-mail.

 

Já estive a estudar um pouco e vi que existe a técnica "Web Beacon", mas também li que poderia ser considerada spam, correto? E o senão de que a maioria das vezes no e-mail é-nos bloqueada as imagens...

 

A minha ideia era inserir o e-mail do utilizador que leu a newsletter na Base de Dados, alguém tem alguma ideia para fazer isto da melhor maneira (clean) possível, sem referenciar spam?

 

Obrigado pela ajuda.

 

Cumprimentos,

AndreLC90

Compartilhar este post


Link para o post
Compartilhar em outros sites
tenta usar js. ao abrir o corpo do email envia para a pagina de referencia

E como ele vai alterar o JS do Gmail???

 

A caixa de e-mails do usuário é inacessível pra você a menos que você saiba a senha (ainda bem, não é?)

 

O que você pode fazer é tentar induzir o usuário a clicar em algum link e aí registrar que aquele usuário leu a newsletter.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pois, mas queria mesmo sem ter que clicar em algum link, mas o utilizador pode estar a ler a newsletter e não clicar e nada...

 

Não daria para... não sei exactamente como fazer mas se usasse um JPEG dentro da newsletter com um nome diferente de acordo com o utilizador.

 

Exemplo:

 

banner001.jpg -> user001@email.com

banner002.Jpg -> user002@email.com

 

Programaria para que assim que alguém fizesse download do banner001.jpg ele validasse o user001 como leitor que leu a Newsletter, mas como fazer?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tem o esquema de colocar uma tag <img /> com tamanho 0(zero) e sem bordas. No parâmetro SRC, você coloca a referência de um arquivo PHP, que ele adiciona ao banco de dados. Nem sempre funciona, pois os gerenciadores de e-mail podem bloquear exibição de imagens.

 

Mas a ideia é bem simples:

<img src="http://meusite.com.br/newsletter.php?email=fulano@gmail.com" style="border: none; height: 0px; width: 0px;" />

 

Toda vez que o e-mail for aberto, ele vai tentar abrir a "imagem" (o arquivo mencionado) passando os parâmetros mencionados.

 

A abertura da imagem vai dar erro, mas como ela é sem bordas e de tamanho 0, não aparecerá.

 

Também tem da tag <iframe> </iframe>. Funciona da mesma forma. Sempre há seus prós e contras.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tem o esquema de colocar uma tag <img /> com tamanho 0(zero) e sem bordas. No parâmetro SRC, você coloca a referência de um arquivo PHP, que ele adiciona ao banco de dados. Nem sempre funciona, pois os gerenciadores de e-mail podem bloquear exibição de imagens.

 

Mas a ideia é bem simples:

<img src="http://meusite.com.br/newsletter.php?email=fulano@gmail.com" style="border: none; height: 0px; width: 0px;" />

 

Toda vez que o e-mail for aberto, ele vai tentar abrir a "imagem" (o arquivo mencionado) passando os parâmetros mencionados.

 

A abertura da imagem vai dar erro, mas como ela é sem bordas e de tamanho 0, não aparecerá.

 

Também tem da tag <iframe> </iframe>. Funciona da mesma forma. Sempre há seus prós e contras.

 

Pois, a técnica chamada "Web Beacon" tal como referi. Mas pode ser referenciado como spam e não queria!

Além do mais vou enviar para uma lista de 50.000 contatos, como passo no parametro email o respectivo e-mail do contacto em si?

Compartilhar este post


Link para o post
Compartilhar em outros sites

E se esse arquivo PHP, além de processar que a newletter foi lida de fato retornasse uma imagem?

Você consegue fazer isso lendo o conteúdo da mesma e fornecendo a saída junto com um header do tipo:

header('Content-Type', 'image/jpeg');

Compartilhar este post


Link para o post
Compartilhar em outros sites

complementando o que o @Henrique Barcelos destacou. Basta, no final do arquivo PHP, incluir a função readfile(). Para então, o navegador interpretar, junto com o cabeçalho em PHP, o código binário como uma imagem.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Mas o problema é como saber qual o leitor que está a ler a Newsletter?

<img src="http://meusite.com.br/newsletter.php?email=fulano@gmail.com" style="border: none; height: 0px; width: 0px;" />

Agora faça com que newsletter.php seja uma imagem, pode ser a logo da empresa, sei lá... Não sei se isso é válido, ou se é considerado Web Beacon também...

Compartilhar este post


Link para o post
Compartilhar em outros sites

<img src="http://meusite.com.br/newsletter.php?email=fulano@gmail.com" style="border: none; height: 0px; width: 0px;" />

Agora faça com que newsletter.php seja uma imagem, pode ser a logo da empresa, sei lá... Não sei se isso é válido, ou se é considerado Web Beacon também...

 

Mas como passa cada email no parâmetro email?

 

?email=fulano@gmail.com

?email=fulano2@gmail.com

?email=fulano3@gmail.com

 

???

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isso, passe na query string. Será uma página PHP normal, com a diferença que será gerada uma imagem em sua saída, ao invés de HTML, JSON ou qualquer outra coisa...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas a newsletter será a mesma, o e-mail a passar é que é diferente.

 

Não entendo é como passar cada e-mail no parâmetro email em cada newsletter?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faça a mensagem do e-mail ser dinâmica.

Você tem uma lista de e-mails. Ao iterar sobre essa lista, na imagem, você coloca o e-mail:

 

foreach($mailList as $email) {
$msg = "...
   	<img src=\"http://seusite.com/alguma_imagem.php?email={$email}\" alt="blabla"/>
	...";
}

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.