Merhaba, PHP’de Sayfaya Giren Kullanıcıların İp Adresini Alma başlıklı yazıma hoşgeldiniz, bu yazımda phpnin global server değişkeni ile kullanıcının ipsi nasıl alınır onu göstereceğim.
Basit olarak kullanıcının ip adresinin alınması;
<?php echo $_SERVER['REMOTE_ADDR']; ?>
Basit olarak kullanıcıların ip adresini böyle görebiliyoruz ama bazı kişiler, kuruluşlar ip adreslerini gizliyorlar ve biz onların ip adresi yerine 192.168… rakamlarıyla başlayan saçma sapan ip adresi görmüş oluyoruz. Bunun de önüne geçen şöyle bir fonksiyon var;
Kullanıcının Gerçek İp Adresini Alma Fonksiyonu
Not: Bu fonksiyon ip adresinin gerçekliğini garanti etmez.
<?php function gercekip(){ if(getenv("HTTP_CLIENT_IP")) { $ip = getenv("HTTP_CLIENT_IP"); } elseif(getenv("HTTP_X_FORWARDED_FOR")) { $ip = getenv("HTTP_X_FORWARDED_FOR"); if (strstr($ip, ',')) { $tmp = explode (',', $ip); $ip = trim($tmp[0]); } } else { $ip = getenv("REMOTE_ADDR"); } return $ip; } ?>
Kullanımı
<?php echo gercekip; ?>
Örnek kullanım alanı;
Bunları nasıl işlevsel hale getiririm derseniz örnek veriyorum kullanıcılar sitenize kaydolurken gizli bir inputun içine ip adreslerini yazdırarak veritabanına ip adresini de yazdırabilirsiniz, ya da kullanıcı her giriş yaptğında son giriş yapılan ip olarak veritabanına kaydedebilirsiniz.