게시판 본문 ASP, ASP.NET, IIS & Script - Read Only

PHP깡통이 ASP로 변환 하는 중 질문 드립니다.
작성자: 조보영
작성일시: 2005-06-15 10:53,  조회수: 1,237
제가 PHP는 완전 깡통인데 제가 구현 하려고 하는게 여기 저기 다 뒤져도 PHP로된 샘플밖에 없어서 감히 질문 드립니다.
제가 구현하려고 하는 것은 접근한 아이피의 국적을 확인 하는 것입니다.
DB는 http://www.ip2nation.com에서 다운로드 받아 디비에 저장되어 있습니다. 첨부 하겠습니다.
위의 URL에 들어가면 PHP와 MySQL을 사용 하여 아이피에 대해 국적 검사 하는 방법이 나와 있습니다.
그래서 제가 다음과 같이 구문을 ASP로 변환을 하였습니다.
<%
Function Ip2Long(c_ip)
Dim b1, b2, b3, b4
Dim iip
iip = c_ip
b1 = Left(iip, Instr(iip, ".") -1)
iip = Mid(iip, Instr(iip, ".") + 1)
b2 = Left(iip, Instr(iip, ".") -1)
iip = Mid(iip, Instr(iip, ".") + 1)
b3 = Left(iip, Instr(iip, ".") -1)
iip = Mid(iip, Instr(iip, ".") + 1)
b4 = iip

Ip2Long = (CInt(b1) * 256*256*256) + (CInt(b2) * 256*256) + (CInt(b3) * 256) + CInt(b4)
End Function
%>
<%
strip = "168.126.63.1"
bound = Trim(CStr(Ip2Long(strip)))
%>
<%
strConnect = "Provider=SQLOLEDB;Data Source=(local); Initial Catalog=IP2Nation; User id=sa; Password=???"
set db = Server.CreateObject("ADODB.Connection")
db.Open strConnect

set rs = Server.CreateObject("ADODB.Recordset")
SQL = "SELECT Top 1 c.country, c.code FROM ip2nationCountries c, ip2nation i WHERE i.ip<("&bound&") AND c.code=i.country ORDER BY i.ip Desc"

rs.Open SQL, db
%>
<%
country = rs("country")
code = rs("code")
code_image = "flags/flag_"&code&".gif"
%>

이렇게 하면 168.126.63.1 즉 코넷 아이피가 일본으로 나오거든요. 또한 데이콤 쪽 아이피 203.248.252.2도 일본으로 나옵니다.
위의 URL에서 PHP로 된 소스를 보면
<?php

$server = ''; // MySQL hostname
$username = ''; // MySQL username
$password = ''; // MySQL password
$dbname = ''; // MySQL db name


$db = mysql_connect($server, $username, $password) or die(mysql_error());
mysql_select_db($dbname) or die(mysql_error());

$sql = 'SELECT
c.country
FROM
ip2nationCountries c,
ip2nation i
WHERE
i.ip < INET_ATON("'.$_SERVER['REMOTE_ADDR'].'")
AND
c.code = i.country
ORDER BY
i.ip DESC
LIMIT 0,1';

list($countryName) = mysql_fetch_row(mysql_query($sql));

// Output full country name
echo $countryName;

?>
이렇게 하라고 되어 있더 군요.

ip2nation에서 받은 디비가 정확하다는 가정하에 테스트한 아이피가 일본으로 나오게 된 이유는 즉 문제는 두개 정도로 좁혀 지는데,
하나는 제가 아이피를 받아서 bound로 바꾸는 함수가 잘못되었거나,
둘째는 PHP의 쿼리 부분과 ASP의 쿼리 부분이 틀리거나.
아니면 아예 원천적으로 디비가 틀리거나.....
나름데로 PHP쪽 쿼리에 대한 레퍼런스를 좀 뒤져 보긴 했으나 INET_ATON, LIMIT 0,1 이게 뭔지 도저히....

제 소스와 PHP 소스를 좀 비교해서 틀린 부분이 있으면 지적 좀 해주시고,
디비가 필요하시면 정말 정말 번거롭고 죄송하지만 http://www.ip2nation.com에 들어가셔서 다운로드에서 디비를 다운 로드 받아 주시기 바랍니다.

감사합니다.

IP 주소: 61.33.79.10
전체 2 건의 댓글이 존재합니다.

ness09

2005-06-15 12:00

ness09

2005-06-15 12:00
전체 2,095 건의 게시물, 84 페이지로 구성된 ASP, ASP.NET, IIS & Script 게시판의 39 페이지입니다.
게시물
1,180

re: 이미지를 라디오 버튼 기능처럼 하려면.. [1]

초보자

2005-06-21 962
1,179

변수에 접근2 [1]

정보문

2005-06-17 2,754
1,178

re: 변수에 접근2

송원석

2005-06-18 3,098
1,177

변수에 접근 [1]

정보문

2005-06-17 2,674
1,176

fos사용하여 ftp로 업로드된 파일을 읽어서 디비에 등록할려고 하는데..

강수민

2005-06-17 990
1,175

re: fos사용하여 ftp로 업로드된 파일을 읽어서 디비에 등록할려고 하는데..

송원석

2005-06-18 2,830
1,174

ie모니터링

정보문

2005-06-16 937
1,173

re: ie모니터링

송원석

2005-06-17 2,636
1,172

좋은 사이트를 만났군요. iis5.0에서 dllhost.exe 프로세스 100

빼꼼이

2005-06-16 3,162
1,171

re: 좋은 사이트를 만났군요. iis5.0에서 dllhost.exe 프로세스 100 [1]

송원석

2005-06-16 2,892
1,170

NEIS ie 모니터 프로그램이예요.

정보문

2005-06-15 3,214
1,169

re: NEIS ie 모니터 프로그램이예요. [1]

송원석

2005-06-16 2,702

PHP깡통이 ASP로 변환 하는 중 질문 드립니다. [2]

조보영

2005-06-15 1,237
1,167

re:지나가다가.. [3]

오마르

2005-06-15 1,007
1,166

re: PHP깡통이 ASP로 변환 하는 중 질문 드립니다.

송원석

2005-06-15 2,641
1,165

*.DOC 파일 다른 이름으로 대상저장하기

천사

2005-06-13 852
1,164

re: *.DOC 파일 다른 이름으로 대상저장하기

송원석

2005-06-13 2,699
1,163

re: *.DOC 파일 다른 이름으로 대상저장하기 [1]

천사

2005-06-13 855
1,162

이렇게 고쳤어요

왕초보

2005-06-11 2,603
1,161

re: 이렇게 고쳤어요

송원석

2005-06-11 2,729
1,160

한가지 더 질문이요

왕초보

2005-06-10 2,557
1,159

re: 한가지 더 질문이요

송원석

2005-06-10 2,630
1,158

파일큐브 질문이요~~ [1]

왕초보

2005-06-10 3,124
1,156

정규식 좀 도와주세요 [4]

오마르

2005-06-08 889
1,155

re: 정규식 좀 도와주세요 [1]

송원석

2005-06-08 2,982