Dalam dunia teknologi informasi, seringkali kita perlu mendapatkan informasi tentang alamat IP pengunjung suatu situs web. Hal ini dapat berguna dalam berbagai skenario, seperti pelacakan geografis, analisis lalu lintas, dan keamanan. Salah satu cara untuk memperoleh informasi tersebut adalah dengan menggunakan layanan IP Lookup. Dalam artikel ini, kita akan membahas bagaimana membuat IP Lookup menggunakan ip-api.com dengan bahasa pemrograman PHP.
Kode Pembuka:
Sebelum memulai, pastikan bahwa kita telah mengaktifkan ekstensi cURL di server PHP. Ekstensi ini memungkinkan kita untuk melakukan permintaan HTTP dan menerima respons dari API ip-api.com.
<?php // Mendapatkan alamat IP pengunjung $ip = $_SERVER['REMOTE_ADDR']; // Membuat URL API untuk melakukan permintaan $url = "http://ip-api.com/json/" . $ip; // Menginisialisasi cURL dan mengatur opsi permintaan $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // Mengirim permintaan ke API $response = curl_exec($ch); // Menutup koneksi cURL curl_close($ch); // Menguraikan respons JSON menjadi array asosiatif $data = json_decode($response, true); ?>
Penjelasan Kode:
- Pertama, kita mendapatkan alamat IP pengunjung menggunakan
$_SERVER['REMOTE_ADDR']
yang akan disimpan dalam variabel$ip
. - Selanjutnya, kita membentuk URL API dengan menambahkan alamat IP ke URL dasar
http://ip-api.com/json/
. - Setelah itu, kita menginisialisasi cURL dengan
curl_init()
dan mengatur opsi permintaan menggunakancurl_setopt()
. Opsi yang kita atur adalah URL target danCURLOPT_RETURNTRANSFER
yang mengembalikan respons API sebagai string. - Kemudian, kita mengirim permintaan ke API dengan
curl_exec()
. Respons dari API akan disimpan dalam variabel$response
. - Setelah itu, kita menutup koneksi cURL dengan
curl_close()
. - Terakhir, kita menguraikan respons JSON menjadi array asosiatif menggunakan
json_decode()
dan menyimpannya dalam variabel$data
.
Pemrosesan dan Tampilan Data:
Setelah mendapatkan respons dari API dan menguraikannya menjadi array asosiatif, kita dapat memproses dan menampilkan data yang diperoleh.
<!DOCTYPE html> <html> <head> <title>IP Lookup</title> <style> table { border-collapse: collapse; width: 100%; } th, td { padding: 8px; text-align: left; border-bottom: 1px solid #ddd; } </style> </head> <body> <h1>Informasi IP</h1> <table> <tr> <th>Field</th> <th>Value</th> </tr> <tr> <td>IP Address</td> <td><?php echo $data['query']; ?></td> </tr> <tr> <td>ISP</td> <td><?php echo $data['isp']; ?></td> </tr> <tr> <td>Country</td> <td><?php echo $data['country']; ?></td> </tr> <tr> <td>City</td> <td><?php echo $data['city']; ?></td> </tr> <tr> <td>Latitude</td> <td><?php echo $data['lat']; ?></td> </tr> <tr> <td>Longitude</td> <td><?php echo $data['lon']; ?></td> </tr> </table> </body> </html>
Penjelasan Kode:
- Kode ini adalah tampilan HTML sederhana yang menggunakan tag
<table>
untuk menampilkan data IP Lookup. - Data IP yang diperoleh dari API disimpan dalam array
$data
. - Di dalam tag
<table>
, kita menggunakan tag<tr>
dan<td>
untuk membuat baris dan kolom tabel. - Setiap baris tabel menampilkan sebuah field dan valuenya dari array
$data
. - Field seperti “IP Address”, “ISP”, “Country”, “City”, “Latitude”, dan “Longitude” diambil dari kunci-kunci dalam array
$data
.
Kesimpulan:
Dalam artikel ini, kita telah membahas cara membuat IP Lookup menggunakan ip-api.com dengan bahasa pemrograman PHP. Kita menggunakan ekstensi cURL untuk melakukan permintaan HTTP ke API, menerima respons JSON, dan menguraikannya menjadi array asosiatif. Selanjutnya, kita memproses data dan menampilkannya dalam format tabel menggunakan HTML. Dengan menggunakan teknik ini, kita dapat dengan mudah mendapatkan informasi penting seperti alamat IP, ISP, negara, kota, serta koordinat geografis pengunjung situs web. Semoga artikel ini bermanfaat dan membantu Anda dalam mengembangkan fitur IP Lookup dalam proyek PHP Anda.