Cara Mengetahui IP, Browser dan Sistem Operasi Pengunjung dengan PHP

Snippets, Tutorial - 04 Nov 2018

Bagaimana cara mengetahui IP address, jenis web browser dan sistem operasi yang digunakan oleh pengunjung web kita ? tentu bisa, kita dapat melakukannya hanya dengan perintah PHP saja.

Berikut panduan dan kode selengkapnya :

Langkah 1 – Membuatkan Fungsi PHP

Untuk langkah pertama kita akan membuat fungsi dengan PHP, yaitu fungsi untuk mendapatkan IP address dan jenis web browser yang digunakan oleh pengunjung.

// Mendapatkan IP pengunjung menggunakan getenv()
function get_client_ip() {
    $ipaddress = '';
    if (getenv('HTTP_CLIENT_IP'))
        $ipaddress = getenv('HTTP_CLIENT_IP');
    else if(getenv('HTTP_X_FORWARDED_FOR'))
        $ipaddress = getenv('HTTP_X_FORWARDED_FOR');
    else if(getenv('HTTP_X_FORWARDED'))
        $ipaddress = getenv('HTTP_X_FORWARDED');
    else if(getenv('HTTP_FORWARDED_FOR'))
        $ipaddress = getenv('HTTP_FORWARDED_FOR');
    else if(getenv('HTTP_FORWARDED'))
       $ipaddress = getenv('HTTP_FORWARDED');
    else if(getenv('REMOTE_ADDR'))
        $ipaddress = getenv('REMOTE_ADDR');
    else
        $ipaddress = 'IP tidak dikenali';
    return $ipaddress;
}


// Mendapatkan IP pengunjung menggunakan $_SERVER
function get_client_ip_2() {
    $ipaddress = '';
    if (isset($_SERVER['HTTP_CLIENT_IP']))
        $ipaddress = $_SERVER['HTTP_CLIENT_IP'];
    else if(isset($_SERVER['HTTP_X_FORWARDED_FOR']))
        $ipaddress = $_SERVER['HTTP_X_FORWARDED_FOR'];
    else if(isset($_SERVER['HTTP_X_FORWARDED']))
        $ipaddress = $_SERVER['HTTP_X_FORWARDED'];
    else if(isset($_SERVER['HTTP_FORWARDED_FOR']))
        $ipaddress = $_SERVER['HTTP_FORWARDED_FOR'];
    else if(isset($_SERVER['HTTP_FORWARDED']))
        $ipaddress = $_SERVER['HTTP_FORWARDED'];
    else if(isset($_SERVER['REMOTE_ADDR']))
        $ipaddress = $_SERVER['REMOTE_ADDR'];
    else
        $ipaddress = 'IP tidak dikenali';
    return $ipaddress;
}


// Mendapatkan jenis web browser pengunjung
function get_client_browser() {
    $browser = '';
    if(strpos($_SERVER['HTTP_USER_AGENT'], 'Netscape'))
        $browser = 'Netscape';
    else if (strpos($_SERVER['HTTP_USER_AGENT'], 'Firefox'))
        $browser = 'Firefox';
    else if (strpos($_SERVER['HTTP_USER_AGENT'], 'Chrome'))
        $browser = 'Chrome';
    else if (strpos($_SERVER['HTTP_USER_AGENT'], 'Opera'))
        $browser = 'Opera';
    else if (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE'))
        $browser = 'Internet Explorer';
    else
        $browser = 'Other';
    return $browser;
}

Pada kode diatas terdapat 3 function ataupun fungsi yaitu :
1. Fungsi get_client_ip(), menampilkan IP address pengunjung menggunakan getenv (environment variable PHP). Fungsi ini lebih akurat untuk menampilkan IP address pengunjung
2. Fungsi get_client_ip_2(), menampilkan IP address pengunjung menggunakan variable $_SERVER. Variabel $_SERVER terkadang tidak begitu akurat dalam menampilkan IP address pengunjung
3. Fungsi get_client_browser(), menampilkan jenis web browser pengunjung menggunakan variabel $_SERVER['HTTP_USER_AGENT']. Variabel ini juga dapat menampilkan informasi sistem operasi yang digunakan pengunjung.

Langkah 2 – Menampilkan IP Address Pengunjung, Browser dan Sistem Operasi Pengunjung

Berikut contoh penggunaan fungsi PHP yang sudah kita buat diatas untuk menampilkan IP Address, jenis web browser dan sistem operasi pengunjung web Anda.

echo "IP anda adalah : ". get_client_ip()."<br>";
echo "Browser : ".get_client_browser()."<br>";
echo "Sistem Operasi : ".$_SERVER['HTTP_USER_AGENT'];

Keterangan :
– Untuk menampilkan IP address pengunjung gunakan fungsi get_client_ip()
– Perintah $_SERVER['HTTP_USER_AGENT'] berfungsi untuk menampilkan web browser pengunjung
– Perintah $_SERVER['HTTP_USER_AGENT'] akan menampilkan sistem operasi pengunjung

Untuk melihat hasil dari penggunaan fungsi diatas silakan cek demonya dimari.

Cukup mudah bukan ?! Silakan dicoba.