ip2nations.sql 과 각 국가의 국기 이미지들을 다음 링크에서 다운로드 했읍니다.
http://www.ip2nation.com/ip2nation
이제 알고 싶은 것은 XE의 어느파일에다 무슨 코드를 넣으면 되는 지 그 것을 좀 가르쳐 주시면 하는데요.....
어떻게 활용을 할 지 플로챠트를 만들어서 프로그램을 짜야 합니다.
글쓰기 시에 할 지 따로 모듈을 만들어서 할 지 등등 프로그램 작성자가 만들어야 합니다.
저도 어느 방법이 좋은 지 아직도 확신이 가지 않아 여러 가지로 연구 중 입니다.
백고수님,
인터넷이 세계화하여 웹의 사용자들이 세계 각곳에서 들어오고 있기에 어디에서들 들어오고 있는가를 보기쉽게 국기로 밝히는 것은 앞으로 아주 유용한 기능의 하나가 될 것입니다.
제가 백고수님의 여지 껏 코드하신 것의 debugger가 되어 줄 테니 현재 까지 만드신 코드를 이메일로 보내주시면 제가 써가면서 조언을 더 들이겠읍니다.
새로 올리는 글과 댓글에다 작성자의 이름 옆에 국기를 띄우면 좋겠지만 제 생각엔 게시판 글 목록에도 작성자의 이름옆에 국기를 띄우면 좋겠읍니다. 아직 백고수님의 각 게시판 목록에는 국기가 안뜨고 있는데 우선 보는 곳이 각 게시판의 목록 페이지니 그곳에서 부터 뜨게 하는 것이 좋지 않을 가 생각합니다.
그 다음이 현재 백고수님이 하셨듯이 각 글과 댓글 자체의 작성자 이름옆에 뜨게 하는 것으로 이 작업은 끝나는 것이 아닐가 봅니다.
제가 운영하는 동창회 웹은 세계 각곳에서 접촉하고 있으며 고수님 웹에서도 이 국기기능으로 해서 얼마나 많은 사람들이 해외에서 접촉하는가 금방 한눈에 보고 알 수 가 있으니 이거 정말로 희한한 아이디어로서 알려만 지면 많이들 요청할 기능의 하나라고 확신합니다.
원하시면 제가 나서서 (선우님을 위해서 했듯이) 많이 선전해들이죠.
수시로 바꾸고 있는 프로그램입니다. 아직 외부로 송출 예정은 없습니다.
목록에는 보기 싫어서 하지 않았을 뿐이지 모바일 모드에서는 이미 적용되어 있습니다.
다음 링크에 가니 이런 코드가 있군요...
http://www.phptutorial.info/iptocountry/the_script.html#basic
Getting the IP address of
visitors, and displaying country and flag
In case you want to
display flags in your page, download Flags file in the top of this page,
and save all pictures to a folder named "flags" .
We have added a few lines of code to script is previous example
(in red) which
allows showing country specific flags in our pages. This code will
check
whether a gif file containing the two country code exists in "flags"
folder and displays it. In case the gif file in not in the folder, a
default white flag is displayed. In case you have any of the missing
flags, please send
them to us.
$IPaddress=$_SERVER['REMOTE_ADDR'];
$two_letter_country_code=iptocountry($IPaddress);
include("IP_FILES/countries.php");
$three_letter_country_code=$countries[ $two_letter_country_code][0];
$country_name=$countries[$two_letter_country_code][1];
print "Two letters code: $two_letter_country_code<br>";
print "Three letters code: $three_letter_country_code<br>";
print "Country name: $country_name<br>";
// To display flag
$file_to_check="flags/$two_letter_country_code.gif";
if (file_exists($file_to_check)){
print "<img src=$file_to_check width=30 height=15><br>";
}else{
print "<img src=flags/noflag.gif width=30 height=15><br>";
}
function iptocountry($ip) {
$numbers = preg_split( "/\./", $ip);
include("ip_files/".$numbers[0].".php");
$code=($numbers[0] * 16777216) + ($numbers[1] * 65536) + ($numbers[2] * 256) + ($numbers[3]);
foreach($ranges as $key => $value){
if($key<=$code){
if($ranges[$key][0]>=$code){$two_letter_country_code=$ranges[$key][1];break;}
}
}
if ($two_letter_country_code==""){$two_letter_country_code="unkown";}
return $two_letter_country_code;
}
?>
각 국가별 db 와 이미지가 있어야 하고 게시물의 아이피를 기준으로 데이터를 가져오는 방식입니다.