Cách để biết mail bạn gửi đã được đọc hay chưa với php

Nếu bạn dùng PHP để gửi nhận mail ,thì có lẽ bạn cũng sẽ muốn biết liệu mail mà bạn gửi đã được đọc hay chưa ? Vậy làm sao để biết được điều đó ?

mail, php cơ bản, php code, php tips, doc mail

Hôm nay mình xin chia sẻ cho các bạn đoạn code bằng PHP , đoạn code này sẽ giúp chúng ta nhận biết được  người nhận mail đã mở mail ra xem. Bằng cách nhúng vào nội dung gửi mail một đoạn HTML như sau:

<img src="http://www.yourhost.com/image.php">

Như các bạn đã thấy, đoạn code trên thực chất chỉ là file hình, nhưng file hình này sẽ được tạo ra khi người nhận mở mail ra xem, và thông tin trên máy người nhận như thời gian tại thời điểm người đó mở mail và địa chỉ IP sẽ được lưu trữ tại file log.txt. Nếu các bạn chưa rõ về cách gửi nhận mail bằng PHP thì có thể tham khảo bài viết  Hướng dẫn toàn tập về gửi nhận mail bằng PHP .

Việc các bạn cần làm bây giờ là tạo một file mới và đặt tên là image.php, sau đó copy toàn bộ đoạn code bên dưới và dán nó vào .

<?

error_reporting(0);

Header("Content-Type: image/jpeg");



//Get IP

if (!empty($_SERVER['HTTP_CLIENT_IP']))

{

  $ip=$_SERVER['HTTP_CLIENT_IP'];

}

elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))

{

  $ip=$_SERVER['HTTP_X_FORWARDED_FOR'];

}

else

{

  $ip=$_SERVER['REMOTE_ADDR'];

}



//Time

$actual_time = time();

$actual_day = date('Y.m.d', $actual_time);

$actual_day_chart = date('d/m/y', $actual_time);

$actual_hour = date('H:i:s', $actual_time);



//GET Browser

$browser = $_SERVER['HTTP_USER_AGENT'];



//LOG

$myFile = "log.txt";

$fh = fopen($myFile, 'a+');

$stringData = $actual_day . ' ' . $actual_hour . ' ' . $ip . ' ' . $browser . ' ' . "\r\n";

fwrite($fh, $stringData);

fclose($fh);



//Generate Image (Es. dimesion is 1x1)

$newimage = ImageCreate(1,1);

$grigio = ImageColorAllocate($newimage,255,255,255);

ImageJPEG($newimage);

ImageDestroy($newimage);



?>

Bây giờ , các bạn tạo thêm một file mới là log.txt rồi upload cả 2 file này lên host của các bạn. Nhớ thay đổi đường dẫn đến file này cho phù hợp với nội dung trong mail của các bạn.

Nếu các bạn còn thắc mắc điều gì thì đừng ngần ngại để lời lời nhắn dưới dạng comment.

 

 HỖ TRỢ TRỰC TUYẾN