daily pastebin goal
45%
SHARE
TWEET

Untitled

a guest Jan 22nd, 2018 53 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <?php
  2. function getIpAddress()
  3. {
  4.    $basicIP = getenv("REMOTE_ADDR");
  5.    $realIP = getenv("HTTP_X_FORWARDED_FOR");
  6.    
  7.    if(empty($realIP)) { $realIP = getenv("HTTP_X_FORWARDED"); }
  8.    if(empty($realIP)) { $realIP = getenv("HTTP_FORWARDED_FOR"); }
  9.    if(empty($realIP)) { $realIP = getenv("HTTP_FORWARDED"); }
  10.    
  11.    $proxyFlag = empty($realIP) ? 0 : 1;
  12.    
  13.    if(!$proxyFlag) {
  14.       $realIP = getenv("HTTP_VIA");
  15.       if(empty($realIP)) { $realIP = getenv("HTTP_X_COMING_FROM"); }
  16.       if(empty($realIP)) { $realIP = getenv("HTTP_COMING_FROM"); }
  17.       if(!empty($realIP)) { $proxyFlag = 2; }
  18.    }
  19.    
  20.    if($realIP==$basicIP) { $proxyFlag = 0; }
  21.    
  22.    switch($proxyFlag) {
  23.       case '0':
  24.          $ipadr = $basicIP;
  25.          break;
  26.       case '1':
  27.          $tmp = ereg("^([0-9]{1,3}\.){3,3}[0-9]{1,3}", $realIP, $zhoda);
  28.          if($tmp && (count($zhoda)>0)) {
  29.             $ipadr = $zhoda[0];
  30.          } else {
  31.             $ipadr = $basicIP;
  32.          }
  33.          break;
  34.       case '2':
  35.          $ipadr = $basicIP;
  36.    }
  37.    
  38.    return $ipadr;
  39. }
  40. ?>
RAW Paste Data
Top