Gaming Pro نشر 9 سبتمبر 2022 أرسل تقرير نشر 9 سبتمبر 2022 كيف يمكنني صنع زر من خلاله يمكن للمستخدم مشاركة موقعه؟ 1 اقتباس
0 Ayoub Souad نشر 9 سبتمبر 2022 أرسل تقرير نشر 9 سبتمبر 2022 المرجو تقديم تفاصيل اكثر مثلا لغة البرمجة و كود الصفحة التي تستعملها و قصدك بموقعه اقتباس
0 Wael Aljamal نشر 9 سبتمبر 2022 أرسل تقرير نشر 9 سبتمبر 2022 يمكن أن تستعمل HTML Geolocation API التي تدعمها المتصفحات، بحيث نقرأ موقع المستخدم من مكانه من خلال جافاسكربت في المتصفح، ثم نرسل هذه البيانات للخادم (صفحة PHP خاصتنا) geocoordinates.php ملف PHP لمعالجة الطلبية latitude و longitude إحداثيات خطوط الطول و العرض <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>صفحة الموقع</title> <!-- تضمين جيكويري --> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> <script> // جلب الموقع function getLocation() { if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(savePosition, positionError, {timeout:10000}); } else { var x = document.getElementById("error-location"); x.innerHTML = "Geolocation is not supported by this browser."; // متصفح غير مدعوم } } // معاجلة بيانات الموقع في حال خطأ function positionError(error) { var errorCode = error.code; var message = error.message; alert(message); } // إرسال بيانات الموقع للخادم function savePosition(position) { // نستعمل جيكويري للسهولة // نعمل طلب post $.post("geocoordinates.php", {lat: position.coords.latitude, lng: position.coords.longitude}); } </script> </head> <body> <button onclick="getLocation();"> مشاركة موقعي </button> <p id="error-location"></p> </body> </html> ثم معالجة الطلبية في ملف geocoordinates.php <?php // التحقق من استقبال بيانات الطول و العرض if(isset($_POST['lat'], $_POST['lng'])) { // تخزين القيم في متغيرات $lat = $_POST['lat']; $lng = $_POST['lng']; // لعرض الخريطة $url = sprintf("https://maps.googleapis.com/maps/api/geocode/json?latlng=%s,%s", $lat, $lng); $content = file_get_contents($url); // الحصول على البيانات على هيئة json content $metadata = json_decode($content, true); //json فك ترميز if(count($metadata['results']) > 0) { // مثال لشكل الطلبية // https://maps.googleapis.com/maps/api/geocode/json?latlng=40.714224,-73.961452 $result = $metadata['results'][0]; // احفظ في قاعدة البيانات echo $result['formatted_address']; } else { // لم يتم استلام بياناتك لوجود خطأ } } ?> اقتباس
السؤال
Gaming Pro
كيف يمكنني صنع زر من خلاله يمكن للمستخدم مشاركة موقعه؟
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.