-5

how to check email has been read on client side or not using php?

I want to check whether the email send by me is read on client side or not........ Also have to get the following details of the client machine......

1.IP address 2.Time & Date 3.To whom they forwarded my mail

please anyone help me out.....

I want these functions in php

(Note:to track the information it should not contain any image or link.......the function should done through headers.......)

R.S61
  • 1
  • 2
  • It should be not in a message text, but in mail reader client. If you can not reach it's code, than you can not achieve that. – BlitZ Jul 22 '13 at 11:57
  • 1
    You definitely cannot know to whom they've forwarded it -that is unbelievably intrusive. Sometimes mail campaign software includes a link to "forward this" which bounces back through your server to track it, but a regular client forward cannot be tracked, thankfully. – Michael Berkowski Jul 22 '13 at 11:57

4 Answers4

2

It can't be done. E-mail is a fire and forget medium, once it left your server, you have no control over it.

You may request reading receipts using various mechanisms defined for example in RFC 3798 or RFC 3505, however the client is under no obligation to return them.

You may also employ a tracking pixel in an HTML mail, which is at least as unreliable since most clients by default don't show remote images.

As for forwarding, it is done on the receiving server and only the final recipient can determine (if anyone) if the mail has been forwarded. The original sender can not determine if the mail is going to be forwarded, especially not where. There is simply no protocol for it.

As a final word, consider the social side. When a client opens a mail, there is no guarantee that it's actually read by a human. In the end anyone can write an e-mail client that does things to the mail according to their taste and likes. There is no accurate definition of someone opening or reading the mail.

Community
  • 1
  • 1
Janos Pasztor
  • 1,265
  • 8
  • 16
  • ok then how to track their ip address and time – R.S61 Jul 22 '13 at 12:18
  • IP address and time of what? As I said: once it's left your server you have _no_ control over the e-mail. It will get sent to the recipients server, that server may forward it and the recipient's e-mail program will fetch it from their mail server. You have no access to the information. – Janos Pasztor Jul 22 '13 at 12:20
  • the time when an email has been opened – R.S61 Jul 22 '13 at 12:29
  • @R.S61 read the explanation above. You have multiple methods, none of them are reliable. Both methods described give you the time, the image bug gives you the IP address. However, both methods will have a success rate of less than 50%. – Janos Pasztor Jul 22 '13 at 12:49
1

If the client receives their mail on their own computer or via their own mail server then there is nothing that you can do with it.

  • You can not see if they opened it.
  • You can not see if their forward it.

Now if they read their mail via a webmail client which is under your control then things are different. But without that the best you can do is either set a flag asking the client to return an automated 'the message was opened' reply. If the client supports this, or allows it (e.g. the option is not set to disabled) is completely up to the client.

Hennes
  • 195
  • 2
  • 8
0

You can't do everything you are asking for.

The only thing you could do is request a read receipt which would send a mail back saying it had been read IF the user chooses to send you a read receipt.

You cannot see if it is forwarded, who it is forwarded to or anything other than if the user chooses to send a read receipt when they read it and you would just need to write a php script to check email to access those receipts.

Anigel
  • 3,435
  • 1
  • 17
  • 23
  • ok,i'll try in any other way – R.S61 Jul 22 '13 at 12:04
  • There is no other way, apart from using a tracking image in the email and even then it wont tell you who they forwarded it to, only that it has been opened on a different IP and only if they choose to display images, which is disabled by default on most mail clients to prevent exactly this tracking. – Anigel Jul 22 '13 at 12:05
  • ok....could you tell me how to track their ip address and time of the mail opened using the image – R.S61 Jul 22 '13 at 12:09
  • http://stackoverflow.com/questions/5448381/tracking-email-with-php-and-image – Anigel Jul 22 '13 at 12:12
  • @user2606639: Sure, http://stackoverflow.com/a/5448452/1438393 – Amal Murali Jul 22 '13 at 12:13
  • is it possible to set time to delete the mail on the client side which sent from me – R.S61 Jul 22 '13 at 12:23
  • No once you have sent the email, that is it, there is nothing else you can do to it. – Anigel Jul 22 '13 at 12:26
0

There is no way to reliably do this, in no small part because modern email clients have taken steps to prevent you from doing this. Apart from a sending an image bug, I don't think there's any ways to do this in PHP.

  • ok....could you tell me how to track their ip address and time of the mail opened using the image – R.S61 Jul 22 '13 at 12:10