Milad Rafi

جداسازی و انتقال کاربران ایرانی و خارجی

6 پست در این موضوع قرار دارد

سلام

راهی هست که توی سایت کاربران ایرانی و خارجی(هرکشوری به جز ایران ) رو شناسایی کرد و برای هر کدوم یه نسخه از سایت رو نمایش داد؟

میخوام کاربر ها وقتی ادرس سایت site.com رو میزنن اگه ایرانی هستند به ادرس site.com/fa منتقل بشند و سایر کابر ها به site.com/en

0

به اشتراک گذاری این پست


لینک به پست

از طریق کد میتونید آی پی کاربر وارد شده را برسی و غیر ایرانی بودنش رو برسی کنید

1

به اشتراک گذاری این پست


لینک به پست

میشه زحمت کدش رو بکشید و بدید؟ و یا این که یه مرجع براش معرفی کنید که استفاده کنم.خودم با جستجو به نتیجه ای نرسیدم

ممنون

ویرایش شده در توسط Milad Rafi
0

به اشتراک گذاری این پست


لینک به پست

شما محدوده رنج ایپی ایران رو بدست میارین(روی نت هست جستجو کنید پیدا میکنید)

و با استفاده از کدی مثل زیر میتونید این کارو انجام بدید

$range_start = ip2long("68.61.156.0");
$range_end = ip2long("68.61.181.255");
$ip = ip2long($_SERVER['REMOTE_ADDR']);
if ($ip >= $range_start && $ip <= $range_end) {
header("Location: http://fa.wp-parsi.com");
exit;
}else{
header("Location: http://en.wp-parsi.com");
exit;
}

2

به اشتراک گذاری این پست


لینک به پست

ممنون عزیز

راهی وجود نداره رنج ای پی ها خودکار از یه سایت یا لیست دریافت بشه؟

چون تعدادشون خیلی زیاد هست که دستی بخوام وارد کنم

http://services.ce3c.be/ciprg/?countrys=IRAN+%28ISLAMIC+REPUBLIC+OF%29

0

به اشتراک گذاری این پست


لینک به پست

سایتهای زیادی هستن که برای این کار api عرضه میکنن که میتونین از اونها استفاده کنید

    http://ipinfodb.com/ip_location_api.php
http://www.ipgeo.com/api/
http://ip2.cc/
http://www.geobytes.com/IpLocator.htm

مثال:


http://www.hostip.info/use.html
$ip = $_SERVER['REMOTE_ADDR'];
$details = json_decode(file_get_contents("http://ipinfo.io/{$ip}"));
echo $details->country; // -> "US"

از کتابخانه زیر هم میتونین استفاده کنید

https://github.com/willdurand/Geocoder

از دیتابیس زیر هم میتونین استفاده کنید


http://www.maxmind.com/app/geolite

$iplong = ip2long($_SERVER['REMOTE_ADDR']);

// should use mysqli with prepared statements etc, but just an example
mysql_query("
SELECT country
FROM ip_table
WHERE $iplong BETWEEN ip_long_from AND ip_long_to
LIMIT 1
");

0

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری