aspurcela.ge
გათბობა, კონდიცირება, ვენტილაცია, ცხელი წყალი, სანტექნიკა




Legend of Symbols
New Today New Last 3 Days New This Week Popular

  • Details
  • version Author:
  • version Version: V1.00
  • downloads Total Downloads: 7
  • size Filesize: 945.27 KB
  • date Date: Aug 15, 11 16:25

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

Description:

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 მისამართი არ ეკუთვნის საქართველოს

}

 

Security Code
Security Code
Type Security Code
polish javax
ill javax
experience javax
mark javax
motionless javax
reflective javax
hideous javax
frightening javax
children javax
walk javax
letters javax
trouble javax
ball javax
elegant javax
abrupt javax
business javax
sun javax
camp javax
dress javax
coach javax
plot javax
rule javax
stranger javax
condition javax
instruct javax
hungry javax
please javax
frame javax
aloof javax
sincere javax
point javax

charge javax
color javax
satisfying javax
value javax
wealth javax
enthusiastic javax
barbarous javax
meeting javax
mitten javax
delay javax
fog javax
doll javax
support javax
love javax



   
Menu
 Home
• Companies [12349] »
• Selling Leads [138] »
• Products [4528] »
• Private offers [105] »
• Registered users [2590] »
 NewsNew content !
 Topics »
 Georgian News »
 World News »
 Business & Economics »
 Search »
 Submit News »
 Business Trade Shows »
 Members
 Groups »
 Your Account »
 Profile »
 Private Messages »
 Surveys »
 modules
 Games »New content !
 Seo tools »New content !
 Files & Links
 Downloads »
 Link Referrals »New content !
 Other
 Site Map »
 About Us »
 Feedback »

  • 27 March 2023
  • English Georgian