프레임 홈페이지에서 로그인 후 게시판 새로고침(refresh) 정보
프레임 홈페이지에서 로그인 후 게시판 새로고침(refresh)본문
노프레임 홈페이지가 대세인듯 보여서 그다지 많은 분들께 도움이 될런지는 모르겠지만요...
저같이 지름신보다 더 무서운 귀차니즘신이 충만해서(다들 그렇다는것은 아닙니다... ^^;),
기존에 만들었거나 만들어오던 프레임 홈페이지만을 고수하는 분들께 도움이 될까해서 올립니다.
프레임 홈페이지에서 외부로그인과 그누보드 게시판을 그림과 같이 별도의 프레임에 나오도록 했을때,
로그인 한 후에도 게시판은 멀뚱~ 하게 있어서 직접 새로고침을 해줘야하는 불편함이 있어서... ㅡ.ㅡ;
궁리를 하다보니... (고수님들이야 다 아시겠지만요...) ^^;
제가 잘 못찾은건지도 모르지만 여기 질문답변/팁 게시물들을 검색해보니 없는듯해서요...
아래와 같이 index.htm 파일에서 프레임을 나누면 그림과 같이 구성이 됩니다.
(불필요한 부분들은 제거하고 올립니다~)
<frameset rows="50, 1*, 30">
<frame name="top" src="top.htm">
<frameset cols="200, 1*">
<frame name="login" src="login.php">
<frame name="main" src="./gnu4euc/bbs/board.php?bo_table=test">
</frameset>
<frame name="bottom" src="bottom.htm">
</frameset>
각각의 이름을 top, login, main, bottom 으로 지정을 했구요.
각각을 순서대로 번호를 붙이자면... top=0, login=1, main=2, bottom=3 이 됩니다.
외부 로그인을 이용할 때 로그인 후에... 게시판도 로그인 후 상태로 보여지게 하려면
'main' 프레임을 새로고침 해주어야 되겠죠???
로그아웃하는 반대의 경우도 마찬가지구요.
방법은 간단합니다.
bbs/logout.php 파일과 bbs/login_check.php 파일 각각의 가장 아래쪽에 보시면...
goto_url($link); 라고 있습니다. 이 코드의 바로 윗줄에 아래 코드를 삽입하세요.
echo "<script language='JavaScript'> top.frames['프레임명'].location.reload(); </script>";
또는
echo "<script language='JavaScript'> top.frames[순번].location.reload(); </script>";
위 예제에서는 'main' 프레임이 refresh 되어야 하니...
echo "<script language='JavaScript'> top.frames['main'].location.reload(); </script>";
또는
echo "<script language='JavaScript'> top.frames[2].location.reload(); </script>";
가 됩니다.
되도록이면 스킨쪽에 넣어보려고 궁리를 해봤는데... 로그인은 문제 없었는데...
로그아웃하면서 session_destroy() 부분에서 에러가 발생하더군요. ㅡ.ㅡ;
대신 위 두 파일에서는 위치도 찾기 쉽고, 보다 명확한듯해서 그냥 저기다가 넣었습니다. ^^;
회원가입/탈퇴의 경우는 반대로 'main' 프레임에서 과정이 이루어지고 완료 후 'login' 프레임이 refresh 되어야 하니...
회원가입시에는 간단하게 member 스킨의 register_result.skin.php 파일의 제일 밑부분에서...
<!-- 환영테이블 [끝] -->
<p align=center><a href="<?=$g4[url]?>/">
이 부분을 <?=$g4[url]?> 대신 여러분의 홈페이지 루트로 잡아주시면 되겠고...
탈퇴시에는 bbs/member_leave.php 파일의 제일 밑부분...
alert("{$member[mb_nick]}님께서는 " . date("Y년 m월 d일") . "에 회원에서 탈퇴 하셨습니다.", $url);
의 바로 윗줄에...
echo "<script language='JavaScript'> top.frames['login'].location.reload(); </script>";
또는
echo "<script language='JavaScript'> top.frames[1].location.reload(); </script>";
을 삽입해 주시면 되겠습니다.
홈페이지 구성에 따라서 조금씩 다를수도 있겠습니다만... 적절히 응용해주시면... ^^;
제가 개인적으로 iframe을 잘 사용하지 못해서 복잡한것은 못해봤지만 간단하게 테스트 해본 바로는...
iframe을 삽입해서 사용한 경우에도 마찬가지로 적용이 가능합니다.
결과적으로...
echo "<script language='JavaScript'> top.frames['프레임명'].location.reload(); </script>";
요거 한줄 삽입해주면 된다는 말인데... 괜히 설명이 길어졌네요... ㅡ.ㅡ;
좋은 꿈 꾸시고 내일도 좋은하루 되시길 바랍니다~ ^^;
(참고로, 그림의 외부로그인은 '착한아담'님의 로그인 스킨입니다. ^^;)
(http://sir.co.kr/bbs/tb.php/g4_skin/2981)
저같이 지름신보다 더 무서운 귀차니즘신이 충만해서(다들 그렇다는것은 아닙니다... ^^;),
기존에 만들었거나 만들어오던 프레임 홈페이지만을 고수하는 분들께 도움이 될까해서 올립니다.
프레임 홈페이지에서 외부로그인과 그누보드 게시판을 그림과 같이 별도의 프레임에 나오도록 했을때,
로그인 한 후에도 게시판은 멀뚱~ 하게 있어서 직접 새로고침을 해줘야하는 불편함이 있어서... ㅡ.ㅡ;
궁리를 하다보니... (고수님들이야 다 아시겠지만요...) ^^;
제가 잘 못찾은건지도 모르지만 여기 질문답변/팁 게시물들을 검색해보니 없는듯해서요...
아래와 같이 index.htm 파일에서 프레임을 나누면 그림과 같이 구성이 됩니다.
(불필요한 부분들은 제거하고 올립니다~)
<frameset rows="50, 1*, 30">
<frame name="top" src="top.htm">
<frameset cols="200, 1*">
<frame name="login" src="login.php">
<frame name="main" src="./gnu4euc/bbs/board.php?bo_table=test">
</frameset>
<frame name="bottom" src="bottom.htm">
</frameset>
각각의 이름을 top, login, main, bottom 으로 지정을 했구요.
각각을 순서대로 번호를 붙이자면... top=0, login=1, main=2, bottom=3 이 됩니다.
외부 로그인을 이용할 때 로그인 후에... 게시판도 로그인 후 상태로 보여지게 하려면
'main' 프레임을 새로고침 해주어야 되겠죠???
로그아웃하는 반대의 경우도 마찬가지구요.
방법은 간단합니다.
bbs/logout.php 파일과 bbs/login_check.php 파일 각각의 가장 아래쪽에 보시면...
goto_url($link); 라고 있습니다. 이 코드의 바로 윗줄에 아래 코드를 삽입하세요.
echo "<script language='JavaScript'> top.frames['프레임명'].location.reload(); </script>";
또는
echo "<script language='JavaScript'> top.frames[순번].location.reload(); </script>";
위 예제에서는 'main' 프레임이 refresh 되어야 하니...
echo "<script language='JavaScript'> top.frames['main'].location.reload(); </script>";
또는
echo "<script language='JavaScript'> top.frames[2].location.reload(); </script>";
가 됩니다.
되도록이면 스킨쪽에 넣어보려고 궁리를 해봤는데... 로그인은 문제 없었는데...
로그아웃하면서 session_destroy() 부분에서 에러가 발생하더군요. ㅡ.ㅡ;
대신 위 두 파일에서는 위치도 찾기 쉽고, 보다 명확한듯해서 그냥 저기다가 넣었습니다. ^^;
회원가입/탈퇴의 경우는 반대로 'main' 프레임에서 과정이 이루어지고 완료 후 'login' 프레임이 refresh 되어야 하니...
회원가입시에는 간단하게 member 스킨의 register_result.skin.php 파일의 제일 밑부분에서...
<!-- 환영테이블 [끝] -->
<p align=center><a href="<?=$g4[url]?>/">
이 부분을 <?=$g4[url]?> 대신 여러분의 홈페이지 루트로 잡아주시면 되겠고...
탈퇴시에는 bbs/member_leave.php 파일의 제일 밑부분...
alert("{$member[mb_nick]}님께서는 " . date("Y년 m월 d일") . "에 회원에서 탈퇴 하셨습니다.", $url);
의 바로 윗줄에...
echo "<script language='JavaScript'> top.frames['login'].location.reload(); </script>";
또는
echo "<script language='JavaScript'> top.frames[1].location.reload(); </script>";
을 삽입해 주시면 되겠습니다.
홈페이지 구성에 따라서 조금씩 다를수도 있겠습니다만... 적절히 응용해주시면... ^^;
제가 개인적으로 iframe을 잘 사용하지 못해서 복잡한것은 못해봤지만 간단하게 테스트 해본 바로는...
iframe을 삽입해서 사용한 경우에도 마찬가지로 적용이 가능합니다.
결과적으로...
echo "<script language='JavaScript'> top.frames['프레임명'].location.reload(); </script>";
요거 한줄 삽입해주면 된다는 말인데... 괜히 설명이 길어졌네요... ㅡ.ㅡ;
좋은 꿈 꾸시고 내일도 좋은하루 되시길 바랍니다~ ^^;
(참고로, 그림의 외부로그인은 '착한아담'님의 로그인 스킨입니다. ^^;)
(http://sir.co.kr/bbs/tb.php/g4_skin/2981)
추천
1
1
댓글 7개
오...제가 찾고 있던거였는데....감사합니다!!
정말좋은 팁입니다~ 잘쓰겠습니다^^
우와.. 정말 잘 되네요!
감사합니다~~
감사합니다~~
감사합니다.
스크랩해갈께용~
ㄳㄳ
저 전 이걸응용해 가가라이브채팅을 새로고침 시키려고하는데 에러뜨고 안되네여 어떻게해야될지