piątek, 16 października 2015

PHP - Proste blokowanie narodowości.

1. Tworzymy połączenie z serwerem WHOIS
2. Pytamy o adres IP i pobieramy istotne dane
3. Sprawdzamy czy buffer odpowiedzi zawiera nazwę państwa które chcemy zablokować.

if(!isset($_SESSION['country_check'])):
 $fp = fsockopen("whois.ripe.net", 43, $errno, $errstr, 30);
 $output = '';

 if (!$fp):
     echo "$errstr ($errno)\n";
 else:
     $out = $_SERVER['REMOTE_ADDR'] . "\r\n";
     fwrite($fp, $out);

     while (!feof($fp)):
  $output .= fgets($fp, 128);
     endwhile;
     fclose($fp);
 endif;

 if (strpos($output,'country:        UA') !== false):  /* tutaj wdrażasz swoje pomysły */   die('Ta strona nie jest dostępna w twoim kraju');
 endif;
 $_SESSION['country_check'] = 1;
endif;