<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>IP Geolocation</title>
</head>
<body>
<h1>IP Geolocation</h1>
<form method="POST" action="">
<label for="ip">Masukkan IP Address:</label>
<input type="text" id="ip" name="ip" required>
<button type="submit">Cek Lokasi</button>
</form>
<?php
if ($_SERVER['REQUEST_METHOD'] === 'POST' && !empty($_POST['ip'])) {
$ipAddress = $_POST['ip'];
// Fungsi untuk mendapatkan geolokasi IP menggunakan ip-api.com
function getGeolocation($ip) {
// URL API ip-api dengan parameter IP
$url = "http://ip-api.com/json/{$ip}";
// Mengambil data dari API
$response = file_get_contents($url);
// Mengubah JSON ke array PHP
$data = json_decode($response, true);
// Mengecek apakah hasilnya berhasil atau tidak
if ($data['status'] == 'success') {
return $data; // Mengembalikan data lokasi
} else {
return false; // Mengembalikan false jika gagal
}
}
// Ambil data lokasi berdasarkan IP
$locationData = getGeolocation($ipAddress);
if ($locationData) {
// Koordinat latitude dan longitude
$latitude = $locationData['lat'];
$longitude = $locationData['lon'];
// Tampilkan hasil
echo "<h2>Hasil Geolokasi untuk IP: {$ipAddress}</h2>";
echo "<ul>";
echo "<li><strong>IP:</strong> " . $ipAddress . "</li>";
echo "<li><strong>ASN:</strong> " . $locationData['as'] . "</li>";
echo "<li><strong>Negara:</strong> " . $locationData['country'] . "</li>";
echo "<li><strong>Kode Negara:</strong> " . $locationData['countryCode'] . "</li>";
echo "<li><strong>Negara Bagian:</strong> " . $locationData['regionName'] . "</li>";
echo "<li><strong>Kode Negara Bagian:</strong> " . $locationData['region'] . "</li>";
echo "<li><strong>Kota:</strong> " . $locationData['city'] . "</li>";
echo "<li><strong>Kode Pos:</strong> " . $locationData['zip'] . "</li>";
echo "<li><strong>Zona Waktu:</strong> " . $locationData['timezone'] . "</li>";
echo "<li><strong>Penyedia Layanan:</strong> " . $locationData['isp'] . "</li>";
echo "<li><strong>Perusahaan:</strong> " . $locationData['org'] . "</li>";
echo "<li><strong>Koordinat LatLong:</strong> {$latitude}, {$longitude}</li>";
echo "<li><strong><a href='https://www.google.com/maps?q={$latitude},{$longitude}' target='_blank'>Google Maps</a></strong></li>";
echo "</ul>";
} else {
echo "<p>Lokasi tidak ditemukan untuk IP: {$ipAddress}</p>";
}
}
?>
</body>
</html>