password_forget2.skin.php를 수정중이어요... 정보
password_forget2.skin.php를 수정중이어요...본문
관리자님 + sjsjin님의 조언대로 했더니, form submit가 안되고 true가 나옵니다.
-------
중간의 빨간 부분을 누르면,
밑에 있는 fpasswordforget3_submit(f)를 실행하게 하려는데 undefined 오류가 나오네요. ㅠ..ㅠ..
어떻게 해야 될까요?
비밀번호 찾기를 등록된 email로 보내주는 기능을 추가하려는데, 어렵네요.
--------
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
?>
<table width="600" height="50" border="0" cellpadding="0" cellspacing="0">
<tr>
<td height="50" align="center" valign="middle" bgcolor="#EBEBEB"><table width="590" height="40" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="25" align="center" bgcolor="#FFFFFF" ><img src="<?=$member_skin_path?>/img/icon_01.gif" width="5" height="5"></td>
<td width="175" align="left" bgcolor="#FFFFFF" ><font color="#666666"><b>회원아이디/패스워드 찾기</b></font></td>
<td width="390" align="right" bgcolor="#FFFFFF" ><img src="<?=$member_skin_path?>/img/step_02.gif" width="110" height="16"></td>
</tr>
</table></td>
</tr>
</table>
<form name=fpasswordforget2 method=post onsubmit="return fpasswordforget2_submit(this, key);" autocomplete=off>
<input type=hidden name=bo_table value='<?=$bo_table?>'>
<input type=hidden name=pass_mb_id value='<?=$mb[mb_id]?>'>
<input type=hidden name=email_key value=''>
<table width="600" border="0" cellspacing="0" cellpadding="0">
<tr><td height=10></td></tr>
<tr>
<td width="600" align="center" valign="middle">
<table width="400" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="5%" height="30" align="center"><img src="<?=$member_skin_path?>/img/icon_02.gif" width="6" height="6"></td>
<td width="20%"><b>회원아이디</b></td>
<td width="75%"><b><?=$mb[mb_id]?></b></td>
</tr>
<tr>
<td width="5%" height="30" align="center"><img src="<?=$member_skin_path?>/img/icon_02.gif" width="6" height="6"></td>
<td width="20%"><b>E-mail</b></td>
<td width="75%">
<? if ($mb_email) { ?>
<b><?=encode_mail_form($mb_email)?></b>
<? } else { ?>
<b><?=$_POST[mb_email]?>
<? } ?>
<a href="javascript:fpasswordforget2_submit(document.fpasswordforget2, 'email')">이메일로 비밀번호 재발급</a>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td width="600" height="300" align="center" valign="middle" background="<?=$member_skin_path?>/img/dot_bg_img_01.gif">
<table width="400" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="40" align="center"><img src="<?=$member_skin_path?>/img/icon_02.gif" width="6" height="6"></td>
<td colspan="2"><b>패스워드 분실시 질문</b></td>
</tr>
<tr>
<td height="30" align="center"></td>
<td colspan="2" valign="top"><?=$mb[mb_password_q]?></td>
</tr>
<tr>
<td height="40" align="center"><img src="<?=$member_skin_path?>/img/icon_02.gif" width="6" height="6"></td>
<td colspan="2"><b>패스워드 분실시 답변</b></td>
</tr>
<tr>
<td height="30"></td>
<td colspan="2" valign="top">
<input type=text name='mb_password_a' class=ed size=55 required itemname='패스워드 분실시 답변' value=''>
</td>
</tr>
<tr>
<td height="40" align="center"><img src="<?=$member_skin_path?>/img/icon_02.gif" width="6" height="6"></td>
<td colspan="2">
<input type=hidden name=zsfCodeResult id="zsfCodeResult" value="" >
<script type="text/javascript" src=<?="$g4[path]/zmSpamFree/zmspamfree.js"?>></script>
<img align=absmiddle src="<?=$g4[path]?>/zmSpamFree/zmSpamFree.php?zsfimg=<?php echo time();?>" id="zsfImg" alt="여기를 클릭해 주세요." title="클릭하시면 다른 문제로 바뀝니다. SpamFree.kr" onclick="this.src='<?=$g4[path]?>/zmSpamFree/zmSpamFree.php?re&zsfimg=' + new Date().getTime();" />
<input class='ed' type=input size=10 name=wr_key id=wr_key itemname="자동등록방지" required onblur="checkZsfCode(this);">
</td>
</tr>
</table></td>
</tr>
<tr>
<td height="2" align="center" valign="top" bgcolor="#D5D5D5"></td>
</tr>
<tr>
<td height="2" align="center" valign="top" bgcolor="#E6E6E6"></td>
</tr>
<tr>
<td height="40" align="center" valign="bottom">
<input type="image" src="<?=$member_skin_path?>/img/btn_next_01.gif" onclick="fpasswordforget2_submit(this.form, '')">
<a href="javascript:window.close();"><img src="<?=$member_skin_path?>/img/btn_close.gif" width="48" height="20" border="0"></a>
</td>
</tr>
</table>
</form>
<script type="text/javascript">
function fpasswordforget2_submit(f, key)
{
if (key == "email") {
f.email_key.value = 'email';
} else {
if ($.trim(f.mb_password_a.value).length < 1) {
alert('패스워드 분실시 답변을 입력하십시오.');
f.mb_password_a.focus();
return false;
}
if (typeof(f.wr_key) != 'undefined') {
if (!checkFrm()) {
return false;
}
}
}
f.action = "./password_forget3.php";
return true;
}
document.fpasswordforget2.mb_password_a.focus();
</script>
댓글 전체

를
<a href="javascript:fpasswordforget3_submit(document.fpasswordforget2)">이메일로 비밀번호 재발급</a>
로 수정해 보십시오.

<form method="post" name="formPass">
<input type="hidden" name="bo_table" value="<?=$bo_table?>" />
<input type="hidden" name="pass_mb_id" value="<?=$mb['mb_id']?>" />
<input type="hidden" name="key" value="" />
<a href="javascript:passEmail();">이메일로 찾기</a>
<br>
<a href="javascript:passNext();">다음</a>
</form>
<script type="text/javascript"> var md5_norobot_key = ''; </script>
<script type="text/javascript" src="<?="$g4[path]/js/md5.js"?>"></script>
<script type="text/javascript" src="<?="$g4[path]/js/prototype.js"?>"></script>
<script type="text/javascript">
function imageClick() {
var url = "<?=$g4[bbs_path]?>/kcaptcha_session.php";
var para = "";
var myAjax = new Ajax.Request(
url,
{
method: 'post',
asynchronous: true,
parameters: para,
onComplete: imageClickResult
});
}
function imageClickResult(req) {
var result = req.responseText;
var img = document.createElement("IMG");
img.setAttribute("src", "<?=$g4[bbs_path]?>/kcaptcha_image.php?t=" + (new Date).getTime());
document.getElementById('kcaptcha_image').src = img.getAttribute('src');
md5_norobot_key = result;
}
Event.observe(window, "load", imageClick);
</script>
<script type="text/javascript">
function passEmail()
{
var f = document.formPass;
// key 값에 email 기록
f.key.value = "email";
f.action = "./password_forget3.php";
f.submit();
}
// 다음
function passNext()
{
var f = document.formPass;
// key 값 초기화
f.key.value = "";
if (hex_md5(f.wr_key.value) != md5_norobot_key) {
alert("자동등록방지용 글자가 제대로 입력되지 않았습니다.");
f.wr_key.focus();
return false;
}
f.action = "./password_forget3.php";
f.submit();
}
</script>
--> 몰라서요

<script type="text/javascript">
function fpasswordforget2_submit(f, key)
{
if (key == "email") {
f.email_key.value = 'email';
} else {
if ($.trim(f.mb_password_a.value).length < 1) {
alert('패스워드 분실시 답변을 입력하십시오.');
f.mb_password_a.focus();
return false;
}
if (typeof(f.wr_key) != 'undefined') {
if (!checkFrm()) {
return false;
}
}
}
f.action = "./password_forget3.php";
f.submit(); <-- 요 부분도 추가 하구요
return true;
}
document.fpasswordforget2.mb_password_a.focus();
</script>
--------------------------------------------
<a href="javascript:;" onclick="return fpasswordforget2_submit(document.fpasswordforget2, 'email')">이메일로 비밀번호 재발급</a>
이렇게 하면
return 함수명()
종료 후 반환값이 없지만
<a href="javascript:fpasswordforget2_submit(document.fpasswordforget2, 'email')">이메일로 비밀번호 재발급</a>
<a href="javascript:;" onclick="fpasswordforget2_submit(document.fpasswordforget2, 'email')">이메일로 비밀번호 재발급</a>
이거나 이거는
return 값
을 반환하거든요...
이럴 땐 return 으로 끊어 주셔야 되요..
지금도 모르지만 잘 됩니다. ㅠ..ㅠ...

인 경우
func()가 return 값이 있으면 페이지가 이동합니다.
return express;
대신
return;
으로......