• 2 رای - 5 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
پیدا کردن آدرس محل سکونت
#1
سلام خدمت تمامی دوستان و اساتید محترم خوبید ؟

من آمریکا زندگی میکنم ... اینجا برخی از سایت ها وقتی وارد میشیم آدرس محل زندگی رو یا محدوده محل زندگی رو نمایش میده ... میخواستم ببینم اینها با یه API کار میکنن یا از توابع داخلی PHP ؟؟
سوال بعدی اینه که در جستجوی گوگل وقتی چیزی رو search میکنیم اول محل زندگی شما رو پیدا میکنه و نسبت به جستجوی شما مکان های نزدیک رو بهتون معرفی میکنه سوال اینه که چجوری این اتفاق میفته هم قسمت اولش که مربوط به گوگل هست هم قسمت دوم که احتمالا طراح سایت باید کاری کرده باشه ؟
و اینکه کلا یکم در این مورد توضیح داده بشه ممنون میشم ...
  پاسخ
تشکر شده توسط :
#2
سلام دوباره ... من یه همچین چیزی رو پیدا کردم :

کد پی‌اچ‌پی:
<?php
function getLocationInfoByIp(){
    
$client  = @$_SERVER['HTTP_CLIENT_IP'];
    
$forward = @$_SERVER['HTTP_X_FORWARDED_FOR'];
    
$remote  = @$_SERVER['REMOTE_ADDR'];
    
$result  = array('country'=>'''city'=>'');
    if(
filter_var($clientFILTER_VALIDATE_IP)){
        
$ip $client;
    }elseif(
filter_var($forwardFILTER_VALIDATE_IP)){
        
$ip $forward;
    }else{
        
$ip $remote;
    }
    
$ip_data = @json_decode(file_get_contents("http://www.geoplugin.net/json.gp?ip=".$ip));    
    if(
$ip_data && $ip_data->geoplugin_countryName != null){
        
$result['country'] = $ip_data->geoplugin_countryCode;
        
$result['city'] = $ip_data->geoplugin_city;
    }
    return 
$result;
}
$show=getLocationInfoByIp();
echo 
$show['country'];
echo 
"<br/>";
echo 
$show['city'];
?>

که کشور و شهر رو داخل یه آرایه میریزه و تا حدی مشکل من حل شد ... حالا دوستان اگه اطلاعات بهتر و بیشتری دارن در این مورد ممنون میشم اینجا قرار بدن که استفاده کنیم.
  پاسخ
تشکر شده توسط :
#3
^
عرض سلام و وقن بخیر

در رابطه با api ، این مورد رو نیز تست کنین:
http://ip-api.com/php/31.57.183.165

به نظر جزییات بیشتری رو در اختیار بذاره. ارادتمند
  پاسخ
تشکر شده توسط : kiarash_kcm
#4
(۱۳۹۵ اردیبهشت ۲۹, ۰۱:۰۵ ق.ظ)ayoubsys نوشته: ^
عرض سلام و وقن بخیر

در رابطه با api ، این مورد رو نیز تست کنین:
http://ip-api.com/php/31.57.183.165

به نظر جزییات بیشتری رو در اختیار بذاره. ارادتمند

خیلی ممنون از معرفی این API بله با کمی تغیرات با این چند خط کد میشه اطلاعات بیشتری هم بدست آورد ممنونم :

کد پی‌اچ‌پی:
<?php
/*
array (
  'status' => 'success',
  'country' => 'COUNTRY',
  'countryCode' => 'COUNTRY CODE',
  'region' => 'REGION CODE',
  'regionName' => 'REGION NAME',
  'city' => 'CITY',
  'zip' => ZIP CODE,
  'lat' => LATITUDE,
  'lon' => LONGITUDE,
  'timezone' => 'TIME ZONE',
  'isp' => 'ISP NAME',
  'org' => 'ORGANIZATION NAME',
  'as' => 'AS NUMBER / NAME',
  'query' => 'IP ADDRESS USED FOR QUERY',
)
*/
$ip =@$_REQUEST['REMOTE_ADDR']; // the IP address to query
$query = @unserialize(file_get_contents('http://ip-api.com/php/'.$ip));
if(isset(
$query) && $query['status'] == 'success') {
  echo 
'Hi Visitor,You Are Coming From '.$query['country'].', '.$query['city'].'!';
} else {
  echo 
'We cant find your Location';
}
?>
  پاسخ
تشکر شده توسط : ayoubsys


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان