လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> သင်၏တည်နေရာ၏နေဝင်ချိန်အချိန်ကို Ajax + PHP ကိုအသုံးပြုပြီးအချိန်မှန်ကိုဘယ်လိုရနိုင်မလဲ။

သင်၏တည်နေရာ၏နေဝင်ချိန်အချိန်ကို Ajax + PHP ကိုအသုံးပြုပြီးအချိန်မှန်ကိုဘယ်လိုရနိုင်မလဲ။

M66 2025-06-12

ခေတ်သစ်ဝက်ဘ်ဆိုက်ဖွံ့ဖြိုးတိုးတက်မှုတွင် Ajax နည်းပညာသည် 0 က်ဘ်စာမျက်နှာများကိုလန်းဆန်းမှုမရှိဘဲ 0 က်ဘ်ဆိုက်များကို 0 က်ဘ်ဆိုက်များကိုသက်ဝင်စေနိုင်သည်။ ယနေ့ကျွန်ုပ်တို့ Ajax နှင့် PHP ကိုပေါင်းစပ်ပြီးလုပ်ဆောင်ချက်တစ်ခုရရှိရန်အတွက်နေရာဒေသ၏နေဝင်ချိန်အချိန်ကိုအသုံးပြုသူတည်နေရာသတင်းအချက်အလက် (လတ်တီတွဒ်နှင့်လောင်ဂျီတွဒ်) မှတစ်ဆင့်အမှန်တကယ်အချိန်နှင့်တကယ့်အချိန်ကိုရရန်။

အဆင့် 1: အသုံးပြုသူတည်နေရာသတင်းအချက်အလက်ကိုရယူပါ

ပထမ ဦး စွာကျွန်ုပ်တို့သည်အသုံးပြုသူ၏ပထ 0 ီအနေအထားအရတည်နေရာအချက်အလက်များကိုရယူရန်လိုအပ်သည်။ HTML5 သည်လက်ရှိသုံးစွဲသူ၏လတ်တီတွဒ်နှင့်လောင်ဂျီတွဒ်ကိုရရှိရန်အတွက်ရေကြောင်းနှင့်လောင်ဂျီတွဒ်ကိုရရှိရန်ရေကြောင်း Navigator.geolocation interactace ကိုထောက်ပံ့ပေးသည်။ ဤ interface ကို browser တောင်းဆိုမှုမှတစ်ဆင့်အသုံးပြုသူတည်နေရာသတင်းအချက်အလက်ကိုရယူသည်။ ကုဒ်သည်အောက်ပါအတိုင်းဖြစ်သည် -

 <!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>အချိန်မှန်အတွက်နေဝင်ချိန်အချိန်ကိုရယူပါ</title>
    <script>
        function getLocation() {
            if (navigator.geolocation) {
                navigator.geolocation.getCurrentPosition(showPosition);
            } else {
                alert("ဒီ browser သည် Geolocation ကိုမထောက်ခံပါ");
            }
        }

        function showPosition(position) {
            var latitude = position.coords.latitude;
            var longitude = position.coords.longitude;

            // တယ်လီဖုန်းဆက်ခြင်း PHP နေဝင်ချိန်အချိန်ရရန် interface ကို
            fetchSunsetTime(latitude, longitude);
        }

        function fetchSunsetTime(latitude, longitude) {
            var xhr = new XMLHttpRequest();
            xhr.open("GET", "https://m66.net/sunset-time.php?lat=" + latitude + "&lon=" + longitude, true);
            xhr.onreadystatechange = function() {
                if (xhr.readyState == 4 && xhr.status == 200) {
                    var response = JSON.parse(xhr.responseText);
                    document.getElementById("sunset-time").innerHTML = "နေဝင်ချိန်: " + response.sunset;
                }
            };
            xhr.send();
        }
    </script>
</head>
<body>
    <h1>အချိန်မှန်အတွက်နေဝင်ချိန်အချိန်ကိုရယူပါ</h1>
    <button onclick="getLocation()">获取当前位置的နေဝင်ချိန်</button>
    <p id="sunset-time">နေဝင်ချိန်将显示在这里。</p>
</body>
</html>

အထက်ဖော်ပြပါကုဒ်များတွင်အသုံးပြုသူသည် "Sunsets of Sun Sunset Time" ခလုတ်ကိုနှိပ်လိုက်သောအခါ browser သည်အသုံးပြုသူ၏ပထ 0 ီအနေအထားအရ 0 ယ်ယူရန်တောင်းဆိုလိမ့်မည်။ လတ်တီတွဒ်နှင့်လောင်ဂျီတွဒ်ကိုရယူပြီးနောက် PHP server interface ကို Ajax တောင်းဆိုမှုမှတစ်ဆင့်နေဝင်ချိန်အတွက်နေဝင်ချိန်အချိန်ကိုရရှိရန်အတွက် PHP server interface ကိုခေါ်သည်။

အဆင့် 2: PHP backend interface

အသုံးပြုသူတည်နေရာကို အခြေခံ. နေဝင်ချိန်အချိန်ကိုတွက်ချက်ရန်ကျွန်ုပ်တို့သည်နေဝင်ချိန်သတင်းအချက်အလက်များကိုပြင်ပ API မှတစ်ဆင့်ရရှိရန်လိုအပ်သည်။ ဤတွင်ကျွန်ုပ်တို့သည်အများပြည်သူ API ကို အသုံးပြု. SANDSISS ကိုလတ်တီတွဒ်နှင့်လောင်ဂျီတွဒ်မှတစ်ဆင့်တည်နေရာ၏နေဝင်ချိန်အချိန်ကိုမေးမြန်းနိုင်ပါသည်။ ဤတွင် Ajax တောင်းဆိုမှုများကိုကိုင်တွယ်သော PHP တွင်ကျွန်ုပ်တို့၏ကုဒ်သည်နေဝင်ချိန်အချိန်ကိုရရှိစေသည်။

 <?php
// sunset-time.php

// အသုံးပြုသူမှကယ်ဒူတွီတတ်ခြင်းနှင့်လောင်ဂျီတွဒ်ကိုရယူပါ
$latitude = isset($_GET['lat']) ? floatval($_GET['lat']) : 0;
$longitude = isset($_GET['lon']) ? floatval($_GET['lon']) : 0;

// လတ်တီတွဒ်နှင့်လောင်ဂျီတွဒ်တရားဝင်သည်ရှိမရှိစစ်ဆေးပါ
if ($latitude == 0 || $longitude == 0) {
    echo json_encode(['error' => 'မမှန်ကန်သောလတ်တီတွဒ်နှင့်လောင်ဂျီတွဒ်']);
    exit;
}

// အခမဲ့နေရောင်ခြည်ကိုသုံးပါ API 来获取နေဝင်ချိန်
$url = "https://api.sunsetapi.net/json?lat={$latitude}&lng={$longitude}";
$response = file_get_contents($url);
if ($response === FALSE) {
    echo json_encode(['error' => '无法获取နေဝင်ချိန်']);
    exit;
}

// သုံးသပ်ကြည့်ရှုခြင်း API ပြန်လာဒေတာ
$data = json_decode($response, true);

// 确保返回了有效的နေဝင်ချိန်
if (isset($data['results']['sunset'])) {
    $sunset = $data['results']['sunset'];
    echo json_encode(['sunset' => $sunset]);
} else {
    echo json_encode(['error' => '未能获取နေဝင်ချိန်']);
}
?>

ဤ PHP script တွင် 0 န်ဆောင်မှုခံယူသူမှ လတ်တီ တွဒ်နှင့်လောင်ဂျီ တွူးစ် အရင့်ကိုရရှိမှု, ဒေတာများကိုရရှိပြီးသည့်အခါ၎င်းကို JSON format ရှိ client ကိုပြန်ပို့သည်။

အဆင့် 3: ဆာဗာကိုစတင်ပါ

  1. အထက်ဖော်ပြပါ HTML နှင့် PHP ကုဒ်များကို index.html နှင့် နေဝင်ချိန် - နေဝင်ချိန်။

  2. သင်၏ PHP ပတ်ဝန်းကျင်သည်ကောင်းမွန်စွာလည်ပတ်နေကြောင်းသေချာအောင်လုပ်ပါ (ဥပမာ Xampp သို့မဟုတ် Wamp ဆာဗာကိုအသုံးပြုသည်) သေချာအောင်လုပ်ပါ။

  3. ဖိုင်ကိုသင်၏ဆာဗာ၏ root directory ထဲတွင်ထည့်ပြီးဆာဗာကိုစတင်ပါ။

  4. Index.html စာမျက်နှာကိုသွားပြီးခလုတ်ကိုနှိပ်ပြီးစာမျက်နှာကသင်၏လက်ရှိတည်နေရာ၏နေဝင်ချိန်အချိန်ကိုပြသသင့်သည်။

ရလဒ်များမျက်နှာပြင်

အသုံးပြုသူသည်နေဝင်ချိန်အချိန်ရရန်ခလုတ်ကိုနှိပ်သောအခါ Ajax တောင်းဆိုမှုသည်လတ်တီတွဒ်မှလောင်ဂျီတွဒ်သတင်းအချက်အလက်များကို backend php သို့ပို့ဆောင်ပေးလိမ့်မည်။ Backend သည် External API မှတစ်ဆင့်နေဝင်ချိန်အချိန်ကိုရရှိပြီးနောက်၎င်းသည် client ကိုပြန်ပို့လိမ့်မည်။ 0 န်ဆောင်မှုခံယူသူသည်စာမျက်နှာအကြောင်းအရာကို JavaScript မှတစ်ဆင့် update လုပ်ပြီးနောက်ဆုံးတွင်နေဝင်ချိန်အချိန်ကိုပြသသည်။