تشخيص زبان از روي Ip يا هر چيز ديگري در Php؟

sunrise

Member
سلام دوستان
من ميخوام در Php بر اساس Ip (يا هر چيز ديگري كه امكان اين كار بوسيله آن وجود دارد) زبان كشوري كه كاربر از آنجا وارد سايت شده رو تشخيص بده تا بر اساس سايت من كه به دو زبان فارسي و انگليسي هست حالات براش نمايش داده بشه.
ممنون ميشم اگه راهنمايي كنيد.
 

Majid

مدیر سایت
عضو کادر مدیریت
با اين متغير ميتوني زبان مرورگر رو در بياري :
PHP:
$_SERVER["HTTP_ACCEPT_LANGUAGE"]

اين هم يك مثال :

PHP:
<?php
$language = split(',', $_SERVER["HTTP_ACCEPT_LANGUAGE"]) ;
echo $language ;?>

مجيد
 

sunrise

Member
ممنون مجيد جان از راهنمايي كه كردي ولي من اين راه رو رفتم ولي فايده اي نداره ... چون هميشه زبان انگليسي رو بر مي گردونه. من ميخوام كه به مشخصات IP كه كاربر ازش استفاده مي كنه كار بگيره. مثلاً اگه تو سايت www.irannuke.com ديده باشيد وقتي كه كاربري آنلاين ميشه پرچم كشوري كه آيپي از اونجا هست نشون داده ميشه من هم شبيه اين كار رو ميخوام با اين تفاوت كه ميخوام زبان رو تشخيص بده البته اگه كشور رو هم نشون بده اونطوري هم خوبه مي تونم بر اساس نام كشور زبان فارسي يا انگليسي رو انتخاب كنم.
 
sunrise گفت:
دوستان هيچكس راه حلي رو سراغ نداره !!!؟


منظور شما اينه كه در واقع كشوري كه از اونجا آنلاين شده بدست بياريد
خب شما نياز داريد يه كتابخانه ip ايجاد كنيد و Ip تمام كشور ها رو توش بنويسيد.
اين يه نمونه كتابخانه IP هست كه مي تونيد ايجاد كنيد:
PHP:
217.219.35|ir;
36,12,45|us;
و...
دقت كنيد كه فقط 3 بخش اول IP رو بايد وارد كنيد. ضمناً با اين كار بايد هميشه بروز بشه و مشكلات ديگه.
اما يه راه بهتر هست. اگه سايت شما فقط 2 زبانه هستش بيايد تمام Ip هاي ايران رو گير بياريد.
بعد همشون رو توي ديتابيس يا يك فايل يا يك Array جا بديد. بعد با اعمال شرطي كه اگر از اين Ip ها بود صحيح و لود شدن سايت فارسي؛ else بره و سايت انگليسي رو لود كنه
 

sunrise

Member
بعد همشون رو توي ديتابيس يا يك فايل يا يك Array جا بديد. بعد با اعمال شرطي كه اگر از اين Ip ها بود صحيح و لود شدن سايت فارسي؛ else بره و سايت انگليسي رو لود كنه
اينطوري ميشه ولي مي دونيد چه كار وقت گير و سختيه .. !!! يه مشكل ديگه هم كه اين روش داره اين هست كه ممكنه چند آي اس پي جديد راه اندازي بشه و باز بايد بيام و همه آيپي هاي جديد رو ثبت كنه و اين كار وقت گير و بهتره بگم غير ممكني هست !!!
 

Majid

مدیر سایت
عضو کادر مدیریت
همونطوري كه اميد گفت سايت ip2location رو يك بررسي بكن هم ديتا بيس و هم كدش رو گذاشته

موفق باشي

مجيد
 

sunrise

Member
ممنون از لطف تماميه دوستان ... اگه خدا بخواد دارم سايتم (www.hamedsoft.com) رو مجدد تغيير مي دم. سه ماه ديگه سايت جديد آماده ميشه. اميدوارم خوب و قشنگ از آب در بياد.
 

sunrise

Member
بالاخره درست شد. ip2location خيلي به دردم خورد. هموني بود كه من ميخواستم.

با تشكر از اميد (oxygenws) عزيز كه راهنمايي فرمودند. نمونه استفاده رو مي تونيد در سايت من (www.hamedsoft.com) مشاهده نماييد. يه بار به روش عادي وارد شويد و يه بار با IP, Port يه كشور ديگه تا تغييرات رو ببينيد.
 
آخرین ویرایش:

oxygenws

Active Member
مبارکه.

پ.ن: اسم من "امید" می باشد :D
تازه، اون یکی هم oxygenWS است!! چاکریم.
 

sunrise

Member
oxygenws گفت:
مبارکه.

پ.ن: اسم من "امید" می باشد :D
تازه، اون یکی هم oxygenWS است!! چاکریم.
ممنون اميد جان و ببخشيد كه اسمتون رو اشتباهي نوشتم. ديگه حواس پرتيه ...
 

جدیدترین ارسال ها

بالا