PHP - Sonnenauf.- und Sonnenuntergang mit der Geolocation API auslesen
➤ Möglicherweise fragt der Browser nach, ob er den Zugriff auf den Standort erlauben darf!
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
<?php
// Sonnenauf.- und Sonnenuntergang mit der Geolocation API auslesen
date_default_timezone_set("Europe/Berlin");
if (isset($_GET["location"])) {
$tag = date("j");
$monat = date("n");
$jahr = date("Y");
$sun_info = date_sun_info(strtotime($jahr . "-" . $monat . "-" . $tag), $_GET["latitude"], $_GET["longitude"]);
$onnenaufgang = date("H:i", $sun_info["sunrise"]);
$onnenuntergang = date("H:i", $sun_info["sunset"]);
$unrise = (round(str_replace(":", ".", $onnenuntergang) - str_replace(":", ".", $onnenaufgang), 2));
echo '☼▲ Sonnenaufgang: ' . $onnenaufgang . ' Uhr<br>' .
'☼▼ Sonnenuntergang: ' . $onnenuntergang . ' Uhr <br>' .
'☼◔ Sonnenscheindauer: ' . (number_format($unrise, 1, ",", ".")) . ' Stunden<br>' .
'Breitengrad:' . $_GET["latitude"] . ' - Längengrad:' . $_GET["longitude"];
exit;
}
?>
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<title>Sonnenauf.- und Sonnenuntergang mit der Geolocation API auslesen</title>
<script>
// Geolocation API auslesen
window.addEventListener("DOMContentLoaded", function() {
document.getElementById("button").addEventListener("click",function () {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(showPosition);
}
});
});
// Die Werte über AJAX an PHP senden
const XHR = new XMLHttpRequest();
function showPosition(position) {
XHR.open("GET", "?location&latitude=" + position.coords.latitude + "&longitude=" + position.coords.longitude, true);
XHR.send(null);
XHR.onreadystatechange = function () {
if (XHR.readyState == 4 &&
XHR.status == 200) {
document.querySelector("#ausgabe").innerHTML = XHR.responseText;
}
}
}
</script>
</head>
<body>
<button id="button">Sonnenauf.- und Sonnenuntergang</button>
<p id="ausgabe"></p>
</body>
</html>
Siehe auch: Sonnenaufgang und Sonnenuntergang
Bausteine Alle Anzeigen
Eine zufällige Auswahl von Codeschnipseln
aus den Bereichen
HTML, CSS,
PHP, JavaScript und
MySQL.
<th> Tabellenkopf
PHP - CSRF-Token für Formulare erstellen
JavaScript - https und den Querystring aus der URL entfernen