Merhaba,
Localde bir web sayfamız var. Sağ alt köşede sayfaya giren personelimizin local IP adresini göstermek istiyoruz. IP Adresiniz: xxx.xx.xx.xx şeklinde.
İnternette bulduğum kodlar çalışmıyor. Bu konuda düzgün çalışan bir kod konusunda yardımcı olabilirseniz çok sevinirim..
PHP ile local IP adresini göstermek hk.
7
●220
- 17-10-2023, 04:22:50Alttaki fonksiyonu denediniz mi?
$myip = getHostByName(getHostName()); echo $myip;
https://stackoverflow.com/a/39684274 - 17-10-2023, 04:24:28Merhaba, aşağıda ki kod işinizi görecektir.
<?php $localIP = getHostByName(getHostName()); echo "İp Adresiniz: " . $localIP; ?>
- 17-10-2023, 04:29:33Çok teşekkür ederim hocam. Fakat bu sitenin kurulduğu makinenin ip adresini gösteriyor. Ben siteye giren kullanıcının local ipsini kendi görsün istiyorumHallederiz adlı üyeden alıntı: mesajı görüntüle
- 17-10-2023, 04:33:31
function GetIP(){ 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; } $ipAdresi = GetIP(); echo $ipAdresi; - 17-10-2023, 05:57:51<?phpBoogeymaN adlı üyeden alıntı: mesajı görüntüle
if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_X_FORWARDED_FOR'];
}
echo $_SERVER['REMOTE_ADDR'];
?>
bu yeterlidir diğer arkadaşın verdiği kod yanlış sahte ip gönderebilirler.
eğer cloudflare veya proxy server kullanmıyorsan kullanmıyorsan
if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_X_FORWARDED_FOR'];
}
bu kısmı kaldırman yeterli.
yani sadece echo $_SERVER['REMOTE_ADDR']; yeterli.