aspurcela.ge
ფასდაკლება გათბობის სისტემის მონტაჟზე




აღნიშვნების მნიშვნელობა
ახალი დღეს ახალი ბოლო სამ დღეში ახალი ამ კვირაში პოპულარული

  • ინფორმაცია
  • version ავტორი:
  • version ვერსია: V1.00
  • downloads სულ გადმოწერა: 7
  • size ფაილის ზომა: 945.27 KB
  • date თარიღი: აგვ. 15, 11 16:25

php სკრიპტში IP მისამართით ქვეყნის კოდის დადგენა 

აღწერა:

php სკრიპტში ვიზიტორის ქვეყნის დადგენა ვიზიტორის IP მისამართის საშუალებით არის მარტივი პროცედურა. წინასწარ ბაზაში ინახება ცხრილი, რომელშიც ჩამოთვლილია რომელ IP მისამართს  რომელი ქვეყნის კოდი შეესაბამება. აქ შესაძლებელია სწორედ ამ ცხრილის გადმოწერა.



Features

მაგალითად ცხრილში "c2c" სვეტში რომელ IP-საც "ge" აქვს მითითებული, არის საქართველოს მისამართები.
 

ასევე IP მისამართების დიაპაზონისთვის, მაგალითიად ჩანაწერი ცხრილში:
(100663296, 121195295, 1217739600, 'us'),
ნიშნავს რომ 100663296-დან 121195295-მდე IP მისამართების დიაპზონი არის us.

ანუ პირველ სვეტში მითითებული IP მისამართების დიაპაზონის დასაწყისი, მეორე სვეტში დასასრული.
მესამე სვეტი არის ბოლო განახლების თარიღი და ძირითადად არ გამოიყენება.
მეოთხე სვეტში გვაქვს თავად ქვეყნის კოდი, რომლიდანაც არის ვიზიორი (მისი  IP მისამართი) .

თვალი მიჩვეულია ip მისამართების ჩაწერას ასეთი ფორმით 127.0.0.1
ცხრილი კი შეიცავს რიცხვებს. ეს იმიტომ ხდება რომ რიცხვებთან მუშაობა უფრო სწრაფად ხდება და სკრიპტი უფრო სწრაფია.
 

აქ მოყვანილია ფუნქცია unsigned_ip2long ip მისამართის რიცხვში გადასაყვანად.
და მაგალითისთვის მუშა ფუნქცია get_user_country ქვეყნის კოდის დასადგენად ip მისამართის საშუალებით.

function unsigned_ip2long($ip) {return sprintf("%u", ip2long($ip));}
function get_user_country() {
  global $db, $prefix;
  $user_ip_address = $_SERVER['REMOTE_ADDR'];   
  $user_ip_number = unsigned_ip2long($user_ip_address);   
 
  $record_array = $db->sql_query('SELECT c2c FROM '.$prefix.'_nsnst_ip2country WHERE ip_lo <= '.$user_ip_number.' AND ip_hi >= '.$user_ip_number);
  if($db->sql_numrows($record_array)!=0){
      $row = $db->sql_fetchrow($record_array, SQL_ASSOC);
      return array('found'=> 1, 'c2c'=> $row['c2c'], 'ip'=> $user_ip_address, 'ipn'=> $user_ip_number);
  }else{
      return array('found'=> 0, 'c2c'=> '', 'ip'=> $user_ip_address, 'ipn'=> $user_ip_number);
  }
}

გამოყენება:
$ip2c=get_user_country();   
if($ip2c['found'] && $ip2c['c2c'] == 'ge' ){   
      // ე.ი ip მისამართი ეკუთვნის საქართველოს
   
}else{
      // ე.ი ip მისამართი არ ეკუთვნის საქართველოს

}

 

დაცვის კოდი
დაცვის კოდი
შეიყვანეთ დაცვის კოდი
tawdry kaxel
graceful kaxel
railway kaxel
versed kaxel
heat kaxel
omniscient kaxel
energetic kaxel
elegant kaxel
delirious kaxel
doubtful kaxel
clam kaxel
mark kaxel
monkey kaxel
supreme kaxel
dear kaxel
drop kaxel

plant kaxel
middle kaxel
explain kaxel
cold kaxel
vein kaxel
charge kaxel
things kaxel
pies kaxel
quick kaxel
meeting kaxel
mitten kaxel
psychotic kaxel
duck kaxel
spotted kaxel
toothsome kaxel
request kaxel
neighborly kaxel
view kaxel
windy kaxel
aunt kaxel
color kaxel
melted kaxel
tranquil kaxel
calendar kaxel
remain kaxel
overt kaxel
innocent kaxel
found kaxel
pat kaxel



   
მენიუ
 მთავარი გვერდი
• კომპანიები [12332] »
• ტოპ შეთავაზება [129] »
• პროდუქცია და სერვისი [4498] »
• კერძო განცხადება [95] »
• წევრი საიტზე [2568] »
 ახალი ამბებიNew content !
 რუბრიკები »
 საქართველოს ამბები »
 მსოფლიოს ამბები »
 ბიზნესი და ეკონომიკა »
 სტატიების ძებნა »
 სტატიის განთავსება »
 გამოფენები, ფორუმები »
 წევრები
 ჯგუფები »
 ჩემი კაბინეტი »
 ჩემი პროფილი »
 ჩემი შეტყობინებები »
 გამოკითხვები »
 მოდულები
 თამაშები საიტზე »New content !
 Seo ხელსაწყოები »New content !
 ფაილები და ბმულები
 გადმოწერა »
 ლინქ რეფერალები »New content !
 სხვა
 საიტის რუქა »
 ჩვენს შესახებ »
 კონტაქტი »

  • 08 აგვისტო 2020
  • English Georgian