테스트 사이트 - 개발 중인 베타 버전입니다

iFrame을 이용해서 화면깜빡임없이 로그인 경고창 띄우기

· 18년 전 · 4704 · 1
-- skin/outlogin/basic/outlogin.skin.1.php 에서 --

<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
?>

<script type="text/javascript" language=JavaScript>
// 엠파스 로긴 참고
var bReset = true;
function chkReset(f)
{
if (bReset) { if ( f.mb_id.value == '아이디' ) f.mb_id.value = ''; bReset = false; }
document.getElementById("pw1").style.display = "none";
document.getElementById("pw2").style.display = "";
}
</script>

<table bgcolor=#CCCCCC width=185 cellpadding=1 cellspacing=0>
<form name="fhead" method="post" action="javascript:fhead_submit(document.fhead);" autocomplete="off">
<input type="hidden" name="url" value="<?=$urlencode?>">
<tr>
<td>
<table width=100% bgcolor=#FFFFFF cellpadding=0 cellspacing=0 border=0 height=97>
<tr><td colspan=2 height=5></td></tr>
<tr>
<td>
<table width=100% bgcolor=#FFFFFF cellpadding=0 cellspacing=0 border=0>
<tr>
<td>&nbsp;&nbsp;&nbsp;<img src='<?=$outlogin_skin_path?>/img/icon_id.gif'>&nbsp;</td>
<td><input class=ed name="mb_id" type="text" size="14" maxlength="20" value='아이디' onMouseOver='chkReset(this.form);' onFocus='chkReset(this.form);'></td>
</tr>
<tr>
<td>&nbsp;&nbsp;&nbsp;<img src='<?=$outlogin_skin_path?>/img/icon_pw.gif'>&nbsp;</td>
<td id=pw1><input class=ed type="text" size="14" maxlength="20" value='패스워드' onMouseOver='chkReset(this.form);' onfocus='chkReset(this.form);'>
<td id=pw2 style='display:none;'><input class=ed name="mb_password" type="password" size="14" maxlength="20" onMouseOver='chkReset(this.form);' onfocus='chkReset(this.form);'></td>
</tr>
</table></td>
<td><input type=image src='<?=$outlogin_skin_path?>/img/btn_login.gif' border=0></td>
</tr>
<tr>
<td colspan=2 align=center><input type="checkbox" name="auto_login" value="1" onclick="if (this.checked) { if (confirm('자동로그인을 사용하시면 다음부터 회원아이디와 패스워드를 입력하실 필요가 없습니다.\n\n\공공장소에서는 개인정보가 유출될 수 있으니 사용을 자제하여 주십시오.\n\n자동로그인을 사용하시겠습니까?')) { this.checked = true; } else { this.checked = false; } }"> 자동로그인</td>
</tr>
<tr>
<td colspan=2 align=center>
<a href="javascript:win_password_forget();"><img src='<?=$outlogin_skin_path?>/img/btn_find.gif' border=0></a>
<a href="<?=$g4[bbs_path]?>/register.php"><img src='<?=$outlogin_skin_path?>/img/btn_join.gif' border=0></a>
</td>
</tr>
</table>
</td>
</tr>
</form>
<!-- 새로 추가 -->
<iframe id="LoginFrame" name="LoginFrame" width="0" height="0"></iframe>
</table>

<script language="JavaScript">
function fhead_submit(f)
{
if (!f.mb_id.value)
{
alert("회원아이디를 입력하십시오.");
f.mb_id.focus();
return;
}

if (document.getElementById('pw2').style.display!='none' && !f.mb_password.value)
{
alert("패스워드를 입력하십시오.");
f.mb_password.focus();
return;
}

f.action = "<?=$g4[bbs_path]?>/login_check.php";
f.target = "LoginFrame"; //새로 추가
f.submit();
}
</script>


-- lib/commom.lib.php 에서 --

// 경고메세지만 출력
function alert_only($msg='')
{
global $g4;

if (!$msg) $msg = '올바른 방법으로 이용해 주십시오.';
//header("Content-Type: text/html; charset=$g4[charset]");
echo "<meta http-equiv=\"content-type\" content=\"text/html; charset=$g4[charset]\">";
echo "<script language='javascript'>alert('$msg');</script>";
exit;
}

위 함수를 추가합니다.

-- bbs/login_check.php 에서 --
alert() 함수를 alert_only(); 바꾸시면 됩니다..


그럼 IFRAME을 사용하여 화면 깜빡임 없이 경고창을 띄우는걸 보실수 있습니다.

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 1개

좋은 자료 감사합니다~

게시판 목록

그누4 팁자료실

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