[PHP] почему не показывает реальный IP?

Discussion in 'PHP' started by comeoff, 17 Mar 2014.

  1. comeoff

    comeoff New Member

    Joined:
    10 Mar 2008
    Messages:
    89
    Likes Received:
    3
    Reputations:
    0
    Всем привет. Задача такая: отправляю письмо, в письме картинка
    HTML:
    <img src="http://site.com/img/[email protected]" width="1" height="1">
    когда письмо открывается, на сервер пишется кто открыл его (email из гет запроса) и IP адрес. IP определяется следующим образом:

    PHP:
    function GetRealIp()
    {
     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'];
     }
     return 
    $ip;
    }
    но почему то в базу пишется всегда IP самого почтовика, а не того, кто открыл письмо. Мне нужно знать, с какого email открыли письмо и IP открывшего его. Если с email всё работает, то с IP не понятно. Это реально вообще?
     
  2. GAiN

    GAiN Elder - Старейшина

    Joined:
    2 Apr 2011
    Messages:
    2,550
    Likes Received:
    172
    Reputations:
    99
    многие почтовики проксируют картинки и там высвечивается ip и useragent почтовика, никак не определишь картинкой...