PHP dilinde sürücülerin konumunu gösteren bir uygulama geliştirmek için aşağıdaki gibi bir örnek kod kullanabilirsiniz. Bu örnek, HTML5 Geolocation API’sini kullanarak sürücülerin konumlarını alır ve Google Haritalar API’sini kullanarak bu konumları haritada gösterir.
<!DOCTYPE html>
<html>
<head>
<title>Sürücü Konumları</title>
<style>
#map {
height: 400px;
width: 100%;
}
</style>
<script>
function initMap() {
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 10,
center: {lat: 0, lng: 0} // Haritayı başlangıçta merkeze al
});
// Sürücülerin konumlarını al
function getDriverLocations() {
// Sürücülerin konumlarını PHP ile almak için AJAX isteği gönder
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() {
if (xhr.readyState === XMLHttpRequest.DONE) {
if (xhr.status === 200) {
var locations = JSON.parse(xhr.responseText);
showDriverLocations(locations);
} else {
console.log('Sürücü konumlarını alırken bir hata oluştu: ' + xhr.status);
}
}
};
xhr.open('GET', 'get_driver_locations.php', true);
xhr.send();
}
// Sürücü konumlarını haritada göster
function showDriverLocations(locations) {
for (var i = 0; i < locations.length; i++) {
var location = locations[i];
var marker = new google.maps.Marker({
position: {lat: parseFloat(location.latitude), lng: parseFloat(location.longitude)},
map: map,
title: 'Sürücü ' + (i+1)
});
}
}
// Sürücü konumlarını düzenli olarak güncelle
setInterval(getDriverLocations, 5000); // Her 5 saniyede bir güncelle (istediğiniz aralığı ayarlayabilirsiniz)
}
</script>
<script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap" async defer></script>
</head>
<body>
<div id="map"></div>
</body>
</html>
Yukarıdaki kodda, get_driver_locations.php
adında bir PHP dosyasına AJAX isteği gönderilerek sürücülerin konum bilgileri alınır. Bu PHP dosyasında, sürücülerin konum bilgilerini veritabanından veya başka bir kaynaktan almanız gerekecektir. Ardından, konum bilgileri JSON formatında JavaScript’e geri döndürülür ve showDriverLocations()
fonksiyonuyla haritada sürücülerin konumları işlenir.
Bu örneği kullanırken, Google Haritalar API’si için bir API anahtarınızı eklemeyi unutmayın. Ayrıca, YOUR_API_KEY
yerine kendi API anahtarınızı kullanmanız gerekmektedir.
Not: Bu örnekte sürücülerin konumlarını gerçek zamanlı olarak güncellemek için setInterval()
kullanılmıştır. Gerçek bir uygulama geliştirirken, veritabanı veya gerçek zamanlı veri güncelleme mekanizmalarını da kullanmanız gerekebilir.
Bir yanıt yazın