التحقق من موقع المستخدم ومن ثم تطبيق نمط معين؟

StackOverflow https://stackoverflow.com/questions/617345

  •  03-07-2019
  •  | 
  •  

سؤال

وكيف يمكنك تطبيق نمط الولايات المتحدة للناس في الولايات المتحدة والمملكة المتحدة على غرار لشخص في المملكة المتحدة؟

وعلى سبيل المثال، أريد تغيير العلم وفقا لموقع المستخدم في موقعي.

هل كانت مفيدة؟

المحلول

أولا، تحتاج إلى العثور على عنوان IP زائرك. وسيكون في $ _SERVER [ 'REMOTE_ADDR'] متغير عمومي. يمكنك بعد ذلك ننظر هذا IP ضد قاعدة بيانات IP إلى تعيينات البلاد للحصول على رمز البلد لIP.

وهذه الطريقة ليست دقيقة بنسبة 100٪، وإنما هو "جيدة بما فيه الكفاية" بالنسبة لمعظم الاستخدامات، والأهم من ذلك هو سريع. وربما كنت ترغب في ذاكرة التخزين المؤقت رمز البلد في الكعكة لتجنب عمليات البحث المتكررة، إذا كنت تتوقع ارتفاع حركة المرور.

واحدة من هذه الخرائط يمكن العثور عليها هنا: http://software77.net/cgi-bin/ip-country/ geo-ip.pl

وهناك فئة PHP التي تأخذ IP وإرجاع رمز البلد باستخدام ملف تعيين المجمعة: http://www.phpclasses.org/browse/package/2363.html

نصائح أخرى

وانه دعا الموقع الجغرافي: <وأ href = "https://stackoverflow.com/questions/37015/how-can-i-find-a-users-location-based-on-their-ip-address-free-and-not-free-s "> ما هي الخدمات التي يمكنني استخدامها للعثور على مكان وجود المستخدم استنادا إلى عنوان IP الخاصة بهم؟

كل الأسئلة الموسومة تحديد الموقع الجغرافي

إذا كنت تريد حقا موقع المستخدم، والكلمة هي تحديد الموقع الجغرافي .

لهذا الغرض الخاص، ومع ذلك، يمكن أن تحقق فقط $_SERVER["ACCEPT_LANGUAGE"]. و جملة عبارة عن مجمع قليلا. لحسن الحظ، لا تقريبا كل عميل ما كان ينبغي القيام به على الفور، ويأمر المواقع المفضلة. وهكذا، حساب stripos ($_SERVER["ACCEPT_LANGUAGE"], $lang) لكافة اللغات $lang (مثل "أون لنا") لم دعم واتخاذ أدنى ، ونبذ غات التي تحقق كاذبة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top