آموزش برنامه نویسی

موضوعات آموزش

ورود به سیستم

سایر مطالب

رادیو موزیک آنلاین

مجوزها

logo-samandehi

تبلیغات

دانلود کتاب آموزش فوکوس، نورسنجی، هیستوگرام و شارپنس در دوربین های دیجیتال نیکون

جذابترین های این بخش

مطالب هم شاخه

آیا میدانستید؟

خدمات

گزارشات

سیستم عامل: Unknown OS Platform
مرورگر شما: Unknown Browser
کشور شما: United States
موقعیت شما: 54.161.100.24

بازدید دیروز: 0
بازدید کننده دیروز: 0
بازدید امروز: 314
بازدید کننده امروز: 172
بازدید کل تا به امروز: 2847769

GPS آنلاین

مسیر یاب آنلاین آسان

تبلیغات

دانلود دفترچه راهنمای مدار سیم کشی برق موتورسیکلت

تبلیغات

دانلود دفترچه راهنمای سرویس و نگهداری موتورسیکلت آپاچی 180 و آپاچی 160

تبلیغات

دانلود دفترچه راهنمای سرویس و نگهداری موتورسیکلت تریل سوزوکی

تبلیغات

تبلیغات

دانلود دفترچه راهنمای سرویس و نگهداری موتورسیکلت هندا

آموزش > آموزش برنامه نویسی >  پرکاربردترین نکته ها برنامه نویس > 

بدست آوردن آدرس IP واقعی کاربران با PHP به صورت ایمن

شاید شده باشد که شما هم بخواهید در پروژه های خود اقدام به دریافت IP حقیقی کاربر نمائید تا با استفاده از آن دسترسی هایی برای کاربران ایجاد نمائید. امروز یک کد برای شما قرار داده ایم که با استفاده از آن می توانید به صورت ایمن و یا ضریب اطمینان 90% آدرس IP کاربران رو بدست بیاورد پس در ادامه با ما همراه باشید.

 

<?php
function RealIP()
{
 if($_SERVER['HTTP_X_FORWARDED_FOR']!= '')
 {
  $client_ip = (!empty($_SERVER['REMOTE_ADDR'])) ? $_SERVER['REMOTE_ADDR'] :((!empty($_ENV['REMOTE_ADDR'])) ? $_ENV['REMOTE_ADDR'] : "unknown" );
  $entries = split('[, ]', $_SERVER['HTTP_X_FORWARDED_FOR']);
  reset($entries);
  while(list(, $entry) = each($entries))
  {
   $entry = trim($entry);
   if(preg_match("/^([0-9]+.[0-9]+.[0-9]+.[0-9]+)/", $entry, $ip_list) )
   {
    $private_ip = array(
         '/^0./',
         '/^127.0.0.1/',
         '/^192.168..*/',
         '/^172.((1[6-9])|(2[0-9])|(3[0-1]))..*/',
         '/^10..*/'
         );
    $found_ip = preg_replace($private_ip, $client_ip, $ip_list[1]);
    if ($client_ip != $found_ip)
    {
     $client_ip = $found_ip;
     break;
    }
   }
  }
 }
 else
 {
  $client_ip = (!empty($_SERVER['REMOTE_ADDR'])) ? $_SERVER['REMOTE_ADDR'] : ((!empty($_ENV['REMOTE_ADDR'])) ? $_ENV['REMOTE_ADDR'] : "unknown" );
  if ($client_ip == 'unknown')
  {
   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'];
   }
   $client_ip = $ip;
  }
 }
 return $client_ip;
}
if(preg_match("/^[0-9]{1,3}+.[0-9]{1,3}+.[0-9]{1,3}+.[0-9]{1,3}$/", trim(RealIP())))
{
 echo $clint_ip=RealIP();
}
else
{
 echo '<h1 align="center">';
 echo $clint_ip=RealIP();
 echo '<br>';
 echo 'IP is invalid';
 echo '</h1>';
}

 

توجه: در هرکجا از پروژه های خود که میخواهید از این کد استفاده نمائید حتما خروجی را escape نمائید.

 

پیش نمایش

حجم فایل: 1.55Kb

رمز فایل: www.hassas-computer.com



نام: 9440
ایمیل:
سایت: