Jump to content


Photo

Registrar Quem Abriu E-mail


  • Faça o login para participar
10 replies to this topic

#1 andreacerqueira

andreacerqueira

    Normal

  • Usuários
  • 115 posts
  • Sexo:Não informado

Posted 31/07/2007, 18:05

na verdade estou meio confusa com minhas ideias ainda e estou tentando arrumar um caminho, eu fiz um sistema de newsletter que envia o html feito online pra minha lista que está no bd, mas gostaria de saber quem abriu o email, então coloquei um <a href=\"http://www.site.com/index.php?' . $email_destinatario . '\"> no meio do meu while e isso manda pra cada email enviado o link do site com o e-mail do mesmo como parâmetro, se a pessoa entrar no link acho que daria pra saber quem acessou com um desses script de registro de clicks, mas na verdade eu quero saber quem abriu o e-mail pois nem sempre o e-mail terá link, então pensei em por um <img src=\"http://www.site.com/index.php?' . $email_destinatario . '\"> no meio do while e assim o endereço seria acessado automaticamente sem precisar clicar no link correto? na verdade não seria acessado mais sim chamado na hora de carregar a imagem e não carregaria nada, mas como eu conseguiria registrar isso pra ter um controle? eu tô totalmente perdida nos meu raciocínio, se alguém puder me dar uma ideia de por onde começar eu agradeço. :blink:

#2 LordSky

LordSky

    Turista

  • Usuários
  • 34 posts
  • Sexo:Masculino
  • Localidade:Iguaí - BA

Posted 31/07/2007, 21:03

Boas...

Meu Anjo, queira postar o código onde você quer que ocorra essa ação, vou tentar resolver pra você ;)

Atenciosamente.

Quando acertamos ninguém se lembra, quando erramos ninguém se esquece.

Problemas existem para serem resolvidos, e não para nos controlar.


#3 andreacerqueira

andreacerqueira

    Normal

  • Usuários
  • 115 posts
  • Sexo:Não informado

Posted 31/07/2007, 21:18

Boas...

Meu Anjo, queira postar o código onde você quer que ocorra essa ação, vou tentar resolver pra você ;)

Atenciosamente.

eu preciso uma idéia pra começar a raciocinar direito :rolleyes:

vou postar só o código de envio pois tem muita coisa junto ok?


Edição feita por: savior, 02/08/2007, 12:48.
Utilize tags [codebox] na próxima vez.


#4 LordSky

LordSky

    Turista

  • Usuários
  • 34 posts
  • Sexo:Masculino
  • Localidade:Iguaí - BA

Posted 31/07/2007, 21:29

hum....

Olha só deicha eu ver se entendi você:

Você quer que quando a pessoa abrir o e-mail a mesma seja registrada no DB ?, explica de um modo detalhado, ainda não consegui entender :unsure:

Quando acertamos ninguém se lembra, quando erramos ninguém se esquece.

Problemas existem para serem resolvidos, e não para nos controlar.


#5 andreacerqueira

andreacerqueira

    Normal

  • Usuários
  • 115 posts
  • Sexo:Não informado

Posted 31/07/2007, 21:40

hum....

Olha só deicha eu ver se entendi você:

Você quer que quando a pessoa abrir o e-mail a mesma seja registrada no DB ?, explica de um modo detalhado, ainda não consegui entender :unsure:


sim só que tô tentando fazer por partes, na verdade acho que não vai dar pra ver isso só com a pessoa abrindo o email, acho que ela vai ter que clicar em algum link assim eu teria como passar o parametro pro link, até aí tudo bem se eu colocar isso
<a herf=\"http://www.humdesign.com/index.php?' . $email_destinatario . ' \"></a>
no meio do while ele coloca em cada e-mail um link com o e-mail da pessoa como parametro, mas a pessoa teria que clicar nesse link especifico pra eu saber, então eu teria que automatizar pra que onde existir link esse parametro ser adicionado automaticamente, mas como fazer isso se o html é feito antes do while que envia o email?
melhorou ou complicou? :rolleyes:

#6 bimonti

bimonti

    Super Veterano

  • Usuários
  • 2654 posts
  • Sexo:Masculino

Posted 01/08/2007, 08:38

Fazer o trackback é fácil, o difícil é você conseguir "burlar" a "segurança" anti-spam dos webmails atuais. Para contar quem abriu um e-mail a idéia da imagem é uma das mais viáveis. Você envia junto no email uma imagem para ser aberta dessa forma:

<img src="minha_imagem.PHP?uid=090192810280" />

Eu coloquei a em maiúsculo propositalmente, era pra ser notada. A imagem na verdade é um arquivo PHP, com um código semelhante a este:

<?php
ob_start();
//execute as operações no bd para armazenar o usuário que leu o email
// echo $_GET['uid'];
// imprimi: 090192810280

header ("Content-type: image/png");
$im = @imagecreatetruecolor(1, 1)
	  or die("Impossível inicializar a biblioteca GD.");
imagepng($im);
imagedestroy($im);
ob_end_flush();
?>

Você cria com o php uma imagem de 1x1px, mas antes faz o trabalho de identificação e contagem.
WebFórum - Equipe de Desenvolvimento - Monitor
Posted Image
Yeah I do have some stories, and it's true I want all the glory ...

#7 andreacerqueira

andreacerqueira

    Normal

  • Usuários
  • 115 posts
  • Sexo:Não informado

Posted 01/08/2007, 10:26

Fazer o trackback é fácil, o difícil é você conseguir "burlar" a "segurança" anti-spam dos webmails atuais. Para contar quem abriu um e-mail a idéia da imagem é uma das mais viáveis. Você envia junto no email uma imagem para ser aberta dessa forma:

<img src="minha_imagem.PHP?uid=090192810280" />

Eu coloquei a em maiúsculo propositalmente, era pra ser notada. A imagem na verdade é um arquivo PHP, com um código semelhante a este:

<?php
ob_start();
//execute as operações no bd para armazenar o usuário que leu o email
// echo $_GET['uid'];
// imprimi: 090192810280

header ("Content-type: image/png");
$im = @imagecreatetruecolor(1, 1)
	  or die("Impossível inicializar a biblioteca GD.");
imagepng($im);
imagedestroy($im);
ob_end_flush();
?>

Você cria com o php uma imagem de 1x1px, mas antes faz o trabalho de identificação e contagem.


não entendi muito bem esse código, ele guarda o parametro com o ob_start depois cria uma imagem, depois detroi a imagem, onde eu coloco o script pra salvar no bd no meio disso tudo?
:assobio:

#8 bimonti

bimonti

    Super Veterano

  • Usuários
  • 2654 posts
  • Sexo:Masculino

Posted 01/08/2007, 10:45

O ob_start() segura os cabeçalhos da página. Repare que a página php tem que enviar um header com o tipo de imagem que será gerada, e como você precisa executar algumas operações com o banco de dados eu utilizo-o para que o cabeçalho não seja enviado "ainda".

A parte onde eu coloquei os comentários é onde você irá executar as operações com o banco de dados. Eu até coloquei um $_GET ali para já pegar o identificador do usuário, que você deve substituir pelo qual você usará.

imgpng() irá enviar a imagem para o navegador, então o imagedestroy() serve para liberar a memória utilizada pela imagem, já que ela foi enviada. E no final eu libera o envio dos cabeçalhos com o ob_end_flush();

Qualquer coisa utilize o manual do php ( http://br.php.net ) para consultar as funções utilizadas.
WebFórum - Equipe de Desenvolvimento - Monitor
Posted Image
Yeah I do have some stories, and it's true I want all the glory ...

#9 andreacerqueira

andreacerqueira

    Normal

  • Usuários
  • 115 posts
  • Sexo:Não informado

Posted 01/08/2007, 11:32

agora eu entendi a estrutura, mas não funfou :unsure:

<?php
// segura o cabeçalho da página
ob_start();

// insere o registro no BD
include('admin/config.php');
$conexao = mysql_connect("$dbhost","$dbuser","$dbpass");
mysql_select_db("$dbname");
$contador = "INSERT INTO $TBedit_cont (email) VALUES ('".$_GET['email']."')";
$query = mysql_query($contador);

header ("Content-type: image/png");
$im = @imagecreatetruecolor(1, 1) or die ("Impossível inicializar a biblioteca GD.");

// envia a imagem para o navegador
imagepng($im);

// libera a memória da imagem
imagedestroy($im);

// libera o envio do cabeçalho
ob_end_flush();
?>


#10 Henrique_Melo

Henrique_Melo

    Novato no fórum

  • Usuários
  • 10 posts
  • Sexo:Não informado

Posted 01/08/2007, 11:57

Acho q fazendo isso, seus emails cairam na caixa de spam ou possivelmente serão ignorados.
O que se pode fazer eh uma verificação pelo proprio servidor de email. Pelo menos no email que tenho na empresa, ele me apresenta 3 opções: confirmar entrega, confirmar leitura e urgente.

Vendo a origem do email ele me aparece da seguinte forma:

-----------------------------------------------------------------------------------------------------------------
Return-path: <henrique@xxxxxx.org.br>
Received: from WorldClient by xxxxxx.org.br
(MDaemon PRO v9.6.1)
with ESMTP id md50000073671.msg
for <henrique@xxxxxx.org.br>; Wed, 01 Aug 2007 10:51:06 -0400
Authentication-Results: xxxxxx.org.br
smtp.mail=henrique@xxxxxx.org.br; auth=pass (henrique@xxxxxx.org.br)
Received: by xxxxxx.org.br via WorldClient with HTTP;
Wed, 01 Aug 2007 10:51:03 -0400
Date: Wed, 01 Aug 2007 10:51:03 -0400
From: "Henrique Melo" <henrique@xxxxxx.org.br>
To: henrique@xxxxxx.org.br
Subject:
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="_0801-1051-03-PART-BREAK"
Message-ID: <WorldClient-F200708011051.AA51030004@xxxxxx.org.br>
X-Mailer: WorldClient 9.6.1
Return-Receipt-To: henrique@xxxxxx.org.br
X-Confirm-Reading-To: henrique@xxxxxx.org.br
Disposition-Notification-To: henrique@xxxxxx.org.br
X-Priority: 1 (Highest)
X-Authenticated-Sender: henrique@xxxxxx.org.br
X-Spam-Processed: xxxxxx.org.br, Wed, 01 Aug 2007 10:51:06 -0400
(not processed: message from valid local sender)
X-Rcpt-To: henrique@xxxxxx.org.br
X-MDRcpt-To: henrique@xxxxxx.org.br
X-Return-Path: henrique@xxxxxx.org.br
X-Envelope-From: henrique@xxxxxx.org.br
X-MDaemon-Deliver-To: henrique@xxxxxx.org.br

--_0801-1051-03-PART-BREAK
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: 8bit

Teste

--_0801-1051-03-PART-BREAK
Content-Type: text/html; charset="iso-8859-1"
Content-Transfer-Encoding: 8bit

<HTML>
<head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style title="table borders">.htmtableborders, .htmtableborders td,
.htmtableborders th {border : 1px dashed lightgrey ! important;} </style>
<style type="text/css">html, body { border: 0px; } span.macro, span.macro
ul, span.macro div, span.macro p {background : #CCCCCC;} </style> <style
type="text/css"> p{margin-bottom: 0.15em;margin-top:
0.15em;}body{font-family:;font-size:8pt;}; </style></head><body> <font
style="font-size: 8pt;"><div>Teste<br> </div></font> <div align="left">
<img alt="" src="http://server-03/Use...iles/email.gif" align="" border="0"
hspace="0" vspace="0"><br></div> </body>
</HTML>

--_0801-1051-03-PART-BREAK--


-----------------------------------------------------------------------------------------------------------------



Modifiquei o dominio pra não ocorrer problemas por aqui.

Negritei algumas informações que acho importantes. Talves de pra passar essas informações no header do email, realmente deconheço como possa ser feito isso, porem assim sempre chega um email de confirmação, com isso você consegue saber quem recebeu e abriu o email. Espero que ajude e bons estudo.

Edição feita por: Henrique_Melo, 01/08/2007, 11:58.


#11 andreacerqueira

andreacerqueira

    Normal

  • Usuários
  • 115 posts
  • Sexo:Não informado

Posted 01/08/2007, 19:20

não no meu e-mail não tem isso, mas pelo que a galera tá falando dá pra fazer com uma imagem no e-mail, eu só não consegui fazer funcionar ainda :)
mas valeu pela ideia :rolleyes:


Acho q fazendo isso, seus emails cairam na caixa de spam ou possivelmente serão ignorados.
O que se pode fazer eh uma verificação pelo proprio servidor de email. Pelo menos no email que tenho na empresa, ele me apresenta 3 opções: confirmar entrega, confirmar leitura e urgente.

Vendo a origem do email ele me aparece da seguinte forma:

-----------------------------------------------------------------------------------------------------------------
Return-path: <henrique@xxxxxx.org.br>
Received: from WorldClient by xxxxxx.org.br
(MDaemon PRO v9.6.1)
with ESMTP id md50000073671.msg
for <henrique@xxxxxx.org.br>; Wed, 01 Aug 2007 10:51:06 -0400
Authentication-Results: xxxxxx.org.br
smtp.mail=henrique@xxxxxx.org.br; auth=pass (henrique@xxxxxx.org.br)
Received: by xxxxxx.org.br via WorldClient with HTTP;
Wed, 01 Aug 2007 10:51:03 -0400
Date: Wed, 01 Aug 2007 10:51:03 -0400
From: "Henrique Melo" <henrique@xxxxxx.org.br>
To: henrique@xxxxxx.org.br
Subject:
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="_0801-1051-03-PART-BREAK"
Message-ID: <WorldClient-F200708011051.AA51030004@xxxxxx.org.br>
X-Mailer: WorldClient 9.6.1
Return-Receipt-To: henrique@xxxxxx.org.br
X-Confirm-Reading-To: henrique@xxxxxx.org.br
Disposition-Notification-To: henrique@xxxxxx.org.br
X-Priority: 1 (Highest)
X-Authenticated-Sender: henrique@xxxxxx.org.br
X-Spam-Processed: xxxxxx.org.br, Wed, 01 Aug 2007 10:51:06 -0400
(not processed: message from valid local sender)
X-Rcpt-To: henrique@xxxxxx.org.br
X-MDRcpt-To: henrique@xxxxxx.org.br
X-Return-Path: henrique@xxxxxx.org.br
X-Envelope-From: henrique@xxxxxx.org.br
X-MDaemon-Deliver-To: henrique@xxxxxx.org.br

--_0801-1051-03-PART-BREAK
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: 8bit

Teste

--_0801-1051-03-PART-BREAK
Content-Type: text/html; charset="iso-8859-1"
Content-Transfer-Encoding: 8bit

<HTML>
<head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style title="table borders">.htmtableborders, .htmtableborders td,
.htmtableborders th {border : 1px dashed lightgrey ! important;} </style>
<style type="text/css">html, body { border: 0px; } span.macro, span.macro
ul, span.macro div, span.macro p {background : #CCCCCC;} </style> <style
type="text/css"> p{margin-bottom: 0.15em;margin-top:
0.15em;}body{font-family:;font-size:8pt;}; </style></head><body> <font
style="font-size: 8pt;"><div>Teste<br> </div></font> <div align="left">
<img alt="" src="http://server-03/Use...iles/email.gif" align="" border="0"
hspace="0" vspace="0"><br></div> </body>
</HTML>

--_0801-1051-03-PART-BREAK--


-----------------------------------------------------------------------------------------------------------------



Modifiquei o dominio pra não ocorrer problemas por aqui.

Negritei algumas informações que acho importantes. Talves de pra passar essas informações no header do email, realmente deconheço como possa ser feito isso, porem assim sempre chega um email de confirmação, com isso você consegue saber quem recebeu e abriu o email. Espero que ajude e bons estudo.






1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq