고정 ip를 추출을 하려고 합니다. 코드와 적용방법이 맞는지 봐주세요... 정보
고정 ip를 추출을 하려고 합니다. 코드와 적용방법이 맞는지 봐주세요...
본문
그누보드에서 게시물을 작성할 때 고정ip를 추출하여 wr_ip에 저장하려고 합니다.
아래의 코드를 bbs/write_update.php 의 상단에 적어주었습니다.
아래 코드가 제가 의도한 기능에 부합하는지 혹은 수정할 부분이 있는지 살펴주셨으면 합니다.
감사합니다.
// getRealIP : 진짜 IP 가져오기.
function getRealIP() {
if (getenv('HTTP_CLIENT_IP')) {
$IP = getenv('HTTP_CLIENT_IP');
//echo "HTTP_CLIENT_IP";
} elseif (getenv('HTTP_X_FORWARDED_FOR')) {
$IP = getenv('HTTP_X_FORWARDED_FOR');
//echo "HTTP_X_FORWARDED_FOR";
} elseif (getenv('HTTP_X_FORWARDED')) {
$IP = getenv('HTTP_X_FORWARDED');
//echo "HTTP_X_FORWARDED";
} elseif (getenv('HTTP_FORWARDED_FOR')) {
$IP = getenv('HTTP_FORWARDED_FOR');
//echo "HTTP_FORWARDED_FOR";
} elseif (getenv('HTTP_FORWARDED')) {
$IP = getenv('HTTP_FORWARDED');
//echo "HTTP_FORWARDED";
} else {
$IP = $_SERVER['REMOTE_ADDR'];
//echo "REMOTE_ADDR";
}
return $IP;
}
$wr_ip = getRealIP();
if($wr_ip!=$_SERVER['REMOTE_ADDR']) $wr_ip_info = $_SERVER['REMOTE_ADDR'];
function getRealIP() {
if (getenv('HTTP_CLIENT_IP')) {
$IP = getenv('HTTP_CLIENT_IP');
//echo "HTTP_CLIENT_IP";
} elseif (getenv('HTTP_X_FORWARDED_FOR')) {
$IP = getenv('HTTP_X_FORWARDED_FOR');
//echo "HTTP_X_FORWARDED_FOR";
} elseif (getenv('HTTP_X_FORWARDED')) {
$IP = getenv('HTTP_X_FORWARDED');
//echo "HTTP_X_FORWARDED";
} elseif (getenv('HTTP_FORWARDED_FOR')) {
$IP = getenv('HTTP_FORWARDED_FOR');
//echo "HTTP_FORWARDED_FOR";
} elseif (getenv('HTTP_FORWARDED')) {
$IP = getenv('HTTP_FORWARDED');
//echo "HTTP_FORWARDED";
} else {
$IP = $_SERVER['REMOTE_ADDR'];
//echo "REMOTE_ADDR";
}
return $IP;
}
$wr_ip = getRealIP();
if($wr_ip!=$_SERVER['REMOTE_ADDR']) $wr_ip_info = $_SERVER['REMOTE_ADDR'];
댓글 전체
getRealIP() 를 만드신다면 별도의 파일에 담아서
/extend 폴더에 넣고 어디서나 호출하도록 사용하시는 것이 좋습니다.
그리고 위의 내용을 적용하는것은 bbs/write_update.php 에 하는것 보다는
스킨폴더의 write_update.skin.php 에 하시는것을 권해드립니다.
그렇게 하지 않을경우 프로그램 업그레이드시 마다 bbs/write_update.php에 변겨이 있는지 없는지를 확인하셔야 합니다.
write_update.skin.php의 사용법은 다음 링크의 글에서 수정하는 방법을 참고하십시오
그누보드4 > 그누4팁 > 글등록시 스킨에서 최근게시물($g4[board_new_table])의 글삭제하기
http://www.sir.co.kr/bbs/board.php?bo_table=g4_tiptech&wr_id=605&sca=&sfl=wr_subject%7C%7Cwr_content&stx=write_update.sk&sop=and&page=2
/extend 폴더에 넣고 어디서나 호출하도록 사용하시는 것이 좋습니다.
그리고 위의 내용을 적용하는것은 bbs/write_update.php 에 하는것 보다는
스킨폴더의 write_update.skin.php 에 하시는것을 권해드립니다.
그렇게 하지 않을경우 프로그램 업그레이드시 마다 bbs/write_update.php에 변겨이 있는지 없는지를 확인하셔야 합니다.
write_update.skin.php의 사용법은 다음 링크의 글에서 수정하는 방법을 참고하십시오
그누보드4 > 그누4팁 > 글등록시 스킨에서 최근게시물($g4[board_new_table])의 글삭제하기
http://www.sir.co.kr/bbs/board.php?bo_table=g4_tiptech&wr_id=605&sca=&sfl=wr_subject%7C%7Cwr_content&stx=write_update.sk&sop=and&page=2