새창으로 로그인 띄워 로그인하기. > 그누4 팁자료실

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!

그누4 팁자료실

그누보드4와 관련된 팁을 여러분들과 함께 공유하세요.
나누면 즐거움이 커집니다.

새창으로 로그인 띄워 로그인하기. 정보

새창으로 로그인 띄워 로그인하기.

본문

이 팁이 아무리 찾아봐도 없길래, 고생한 결과를 올려봅니다.^^;
우선, 그누4에 기본적으로 만들어져 있는 로그인 링크가 맨위 상단에 있는데,
그걸 이용하면 쉽게 해결할수 있습니다.

[ 로그인 글자를 누르면 팝업창(새창)이 뜨게 만들자.]

로그인 링크부분을 수정하려면 head.php 파일을 열어야 합니다.
경로는 각자 다를지도 모르겠지만, 기본적으로 /gnuboard4/ 라는 경로에 index.php 파일과 함께있습니다. 잘 모르시겠으면, LICENSE 파일을 찾아보세요~ 같은곳에 들어있습니다.^^;

head.php 파일을 연후, 51번째줄 부분에

            <!-- 로그인 이전 -->
            <td width="78"><a href="<?=$g4[bbs_path]?>/login.php?url=<?=$urlencode?>"><img src="<?=$g4[path]?>/img/top_m02.gif" width="78" height="31" border="0"></a></td>

이부분을 찾아주세요. 찾으셨으면 아래의 소스로 교체해주세요.

<!-- 로그인 이전 -->
            <td width="78"><a onfocus=blur() href="javascript:popup_window('<?=$g4[bbs_path]?>/login.php?url=<?=$urlencode?>','junlogin','left=50, top=50, width=700, height=500, scrollbars=no');"><img src="<?=$g4[path]?>/img/top_m02.gif" width="78" height="31" border="0"></a></td>

여기서 팝업창의 위치와 크기를 조절하는 부분은 'left=50, top=50, width=700, height=500, <--이부분이고 여기서는 스크로바가 뜨지 않게 막아놨는데,
스크롤바가 혹시라도 필요하시면, scrollbars=no' <-- 이부분을  scrollbars=1' 로 고쳐주시면 됩니다.


[로그인후 팝업창이 사라지면서 메인화면이 새로고침 되게 해보자~]

이번에는 ../bbs/ 경로에 있는 login_check.php 파일을 찾아 연후, 54번째 줄 아래와 같은 부분을 찾습니다.

if ($url)
{
    $link = urldecode($url);
    // 2003-06-14 추가 (다른 변수들을 넘겨주기 위함)
    if (preg_match("/\?/", $link))
        $split= "&";
 
..... 중략...

찾으셨으면, if ($url) <-- 이부분 바로 앞에 아래의 소스를 넣어줍니다.

if($junlogin=="1") {
echo ("
<script>
    window.close(); //창닫기
    opener.history.go(0); //부모창 리플래쉬
    opener.focus(); //부모창 포커스
</script>
");
} else

주의 하실점은 위의 소스 } else 와 if ($url) 의 연결 부분을 주의 하세요. 제대로 넣으셨으면 아래와 같아지겠죠?!

if($junlogin=="1") {
echo ("
<script>
    window.close(); //창닫기
    opener.history.go(0); //부모창 리플래쉬
    opener.focus(); //부모창 포커스
</script>
");
} else if ($url)
{
    $link = urldecode($url);
    // 2003-06-14 추가 (다른 변수들을 넘겨주기 위함)
    if (preg_match("/\?/", $link))
        $split= "&";
 
..... 중략...


[로그인 팝업창이 열렸을때 팝업창안에 내용물을 보여지게 해보자.]

/bbs/ 경로내의 login.php 파일을 연후, 맨마지막 부분의 아래의 소스를 찾습니다.

include_once("$member_skin_path/login.skin.php");

include_once("./_tail.php");
?>

찾으셨으면, 아래의 소스를 복사하여 위에 소스 부분에 덮어씌우세요.

?>
<html>
<head>
<title>로그인새창</title>

<script>
    function loading() {
      document.flogin.junlogin.value='1';
      document.flogin.user_id.focus();
    } 
</script>
</head>
<body onload="loading();">
<?
include_once("$member_skin_path/login.skin.php");
?>
</body>
</html>

제대로 연결하셨다면, 아래와 같이 되겠죠?!

<?
include_once("./_common.php");

$g4[title] = "로그인";


// 이미 로그인 중이라면
if ($member[mb_id])
{
    if ($url)
        goto_url($url);
    else
        goto_url($g4[path]);
}

if ($url)
    $urlencode = urlencode($url);
else
    $urlencode = urlencode($_SERVER[REQUEST_URI]);

$member_skin_path = "$g4[path]/skin/member/$config[cf_member_skin]";

?>
<html>
<head>
<title>로그인새창</title>

<script>
    function loading() {
      document.flogin.junlogin.value='1';
      document.flogin.user_id.focus();
    } 
</script>
</head>
<body onload="loading();">
<?
include_once("$member_skin_path/login.skin.php");
?>
</body>
</html>

[로그인 새창에 불러들여진 로그인스킨과 연결하자]

/skin/member/basic/ 경로내의 login.skin.php 파일을 열어, 7번째줄 아래와 같은 소스부분을 찾아보세요...

<input type="hidden" name="url" value='<?=$urlencode?>'>

찾으셨으면, 위의 소스 바로 밑에다가 아래의 소스를 붙혀주세요.

<input type='hidden' name='junlogin'>

이렇게 함으로써,  마지막까지 마무리가 되었습니다.^^

현재 제가 로그인 새창에 불러들인 스킨은 그누4에 기본제공되는 basic 스킨입니다.
스킨내용이나 글자모양, 그밖의 스타일을 바꾸는건 자신의 몫이니 직접 편집해주세요.

위의 소스들을 잘 보시면 아시겠지만, 서로 연결해주는 연결이름은 'junlogin'으로 되어있습니다.
이건 자신이 임의로 바꾸실수 있으나, 다른 소스의 명령어와 겹쳐지지 않도록 해주세요...


이 팁은 원래 제로보드의 리디님이란 분의 설명을 토대로 그누보드4에 맞춰봤습니다.
(아래링크는 원작자의 원래 소스설명입니다. 어떤 원리로 되어있는지 자세히 나와있습니다.)
http://www.nzeo.com/bbs/zboard.php?id=cgi_tip&page=2&sn1=&divpage=1&sn=on&ss=off&sc=off&keyword=리디&select_arrange=headnum&desc=asc&no=4458


일단, 제가 직접 테스트해 보았으니, 오타나 빼먹은 부분이 없으면 잘 될거라 봅니다.^^
추천
2

댓글 16개

정말 감사합니다.

저한데 필요한 팁이네요 ^^

-----------------------------------------------
ㅡ.ㅡ;; 허걱
 
그런데 적용후에 head.sub.php
44 line ~ 50 line 까지 오류 메세지 뜨네요 ㅡㅡ;;

이런..
g4 경로에서는 잘되는데..g4위 경로에서 htm파일에서 팝업창 띄우기 연결하니
팝업창 자체에서 팝업창 클리어하고..부모창을 팝업창에 띄우네요.
잘 되지않아 님의 도움이 필요합니다.
힘드시겠지만 도움을 주세요..수고하세요
전체 2 |RSS

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT