दिलचस्प पोस्ट
मैं नियंत्रण के खुद के परिवर्तन ईवेंट में से एक चयन बॉक्स चयन को प्रोग्राममैटिक रूप से कैसे बदल सकता हूं और यह मोबाइल ब्राउज़र में काम कर सकता है स्प्रिंग में ऑटोचेयरिंग कैसे काम करता है? केपीपीएचपी 2.0 – कस्टम त्रुटि पेज कैसे बनाएं? SO_REUSEADDR (setockopt विकल्प) का अर्थ क्या है – लिनक्स? जावा 8: लम्बा-स्ट्रीम, अपवाद के साथ विधि द्वारा फ़िल्टर करें Android java.exe गैर-शून्य निकास मान 1 के साथ समाप्त हुआ यदि कोई ऐप डाउनलोड किया गया है या नहीं, तो प्रोग्रामैटिक रूप से कैसे जांचें? जावास्क्रिप्ट में एक पंक्ति के बयान में घुंघराले ब्रेसिज की आवश्यकता है? दशमलव संख्या के लिए नियमित अभिव्यक्ति कैसे UINavigationBar 1px नीचे पंक्ति छिपाने के लिए कैसे iPhone 5 के लिए अलग स्टोरीबोर्ड पर स्विच करने के लिए? TypeError: 'dict_keys' ऑब्जेक्ट अनुक्रमणिका का समर्थन नहीं करता है ओपनसीवी 3.0 में गैर-मुक्त मॉड्यूल गायब है स्पष्ट स्थिति से नहीं बल्कि स्कीकरण को सक्षम करने के लिए स्काला सूची को कैसे विस्तारित करें क्या jtextfield और jlist का उपयोग करने के लिए एक स्वत: पूर्ण होना संभव है?

उपयोगकर्ता टाइमज़ोन प्राप्त करें

संभव डुप्लिकेट:
मैं वेब उपयोगकर्ता के समय क्षेत्र को कैसे निर्धारित कर सकता हूं?

ऐसा करने का सबसे अच्छा तरीका क्या है? php या javascript.क्या कोई मुझे कुछ स्निपेट्स प्रदान कर सकता है? धन्यवाद।

वेब के समाधान से एकत्रित समाधान "उपयोगकर्ता टाइमज़ोन प्राप्त करें"

यह आपको एक PHP चर के रूप में समयक्षेत्र प्राप्त करेगा I मैंने jQuery और PHP का इस्तेमाल करते हुए एक फ़ंक्शन लिखी यह परीक्षण किया जाता है, और काम करता है!

PHP पृष्ठ पर, जहां आप समय-क्षेत्र को एक चर के रूप में रखना चाहते हैं, उस पृष्ठ के शीर्ष के निकट कोड का यह स्निपेट है:

<?php session_start(); $timezone = $_SESSION['time']; ?> 

यह सत्र वेरिएबल "समय" पढ़ागा, जिसे हम अब बनाने के बारे में हैं

एक ही पृष्ठ पर, <head> अनुभाग में, सबसे पहले आपको jQuery को शामिल करना होगा:

 <script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script> 

इसके अलावा <head> अनुभाग में, यह jQuery पेस्ट करें:

 <script type="text/javascript"> $(document).ready(function() { if("<?php echo $timezone; ?>".length==0){ var visitortime = new Date(); var visitortimezone = "GMT " + -visitortime.getTimezoneOffset()/60; $.ajax({ type: "GET", url: "http://domain.com/timezone.php", data: 'time='+ visitortimezone, success: function(){ location.reload(); } }); } }); </script> 

हो सकता है या आपने गौर किया हो, लेकिन आपको अपने वास्तविक डोमेन में यूआरएल बदलना होगा।

एक अंतिम बात। आप शायद सोच रहे हैं कि हेक टाइमज़ोन.php क्या है खैर, यह बस यह है: ( टाइमज़ोन.php नामक एक नई फ़ाइल बनाएं और इसके ऊपर यूआरएल के साथ इंगित करें)

 <?php session_start(); $_SESSION['time'] = $_GET['time']; ?> 

यदि यह सही ढंग से काम करता है, तो वह पहले पृष्ठ को लोड करेगा, जावास्क्रिप्ट निष्पादित करेगा, और पृष्ठ पुनः लोड करेगा। फिर आप $ टाइमज़न वेरिएबल को पढ़ सकेंगे और इसे आपकी खुशी में उपयोग कर सकेंगे! यह वर्तमान यूटीसी / जीएमटी समयक्षेत्र ऑफसेट (जीएमटी -7) या आप जिस समय के क्षेत्र में हैं

आप अपने ब्लॉग पर इसके बारे में अधिक पढ़ सकते हैं

चियर्स

</Westy92>

सर्वर-साइड पर यह उतना सटीक नहीं होगा जितना कि जावास्क्रिप्ट के साथ। इस बीच, कभी-कभी यह ऐसे कार्य को हल करने के लिए आवश्यक है। बस इस मामले में संभव समाधान साझा करने के लिए मैं यह उत्तर लिखता हूं।

यदि आपको उपयोगकर्ता के समय क्षेत्र को निर्धारित करने की जरूरत है तो यह भौगोलिक-आईपी सेवाओं के माध्यम से किया जा सकता है। उनमें से कुछ समय क्षेत्र प्रदान करते हैं उदाहरण के लिए, यह एक ( http://smart-ip.net/geoip-api ) मदद कर सकता है:

 <?php $ip = $_SERVER['REMOTE_ADDR']; // means we got user's IP address $json = file_get_contents( 'http://smart-ip.net/geoip-json/' . $ip); // this one service we gonna use to obtain timezone by IP // maybe it's good to add some checks (if/else you've got an answer and if json could be decoded, etc.) $ipData = json_decode( $json, true); if ($ipData['timezone']) { $tz = new DateTimeZone( $ipData['timezone']); $now = new DateTime( 'now', $tz); // DateTime object corellated to user's timezone } else { // we can't determine a timezone - do something else... } 

जैसे ओडेड ने उत्तर दिया है जावास्क्रिप्ट में आपको ये पता लगाने की कार्यक्षमता की आवश्यकता है।

मैंने खुद को इस के साथ संघर्ष किया और महसूस किया कि ऑफसेट पर्याप्त नहीं है यह उदाहरण के लिए डेलाइट सेविंग के बारे में आपको कोई जानकारी नहीं देता है। मैं ज़ोनइन्फो डेटाबेस कुंजियों को मैप करने के लिए कुछ कोड लिखना समाप्त कर दिया।

एक वर्ष के आसपास कई तिथियों को चेक करके आप एक समयक्षेत्र को अधिक सटीक रूप से निर्धारित कर सकते हैं।

यहां स्क्रिप्ट आज़माएं: http://jsfiddle.net/pellepim/CsNcf/

बस अपना सिस्टम टाइमज़ोन बदलें और इसे जांचने के लिए क्लिक करें। यदि आप क्रोम चला रहे हैं तो आपको प्रत्येक टेस्ट को एक नए टैब में करने की आवश्यकता है हालांकि (और टाइम-ज़ोन परिवर्तन लेने के लिए सफारी को पुनरारंभ करने की आवश्यकता है)।

यदि आप कोड का अधिक विवरण चाहते हैं तो देखें: https://bitbucket.org/pellepim/jstimezonedetect/