로그인시 캡챠 관련
본문
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
if ($g4['https_url']) {
$outlogin_url = $_GET['url'];
if ($outlogin_url) {
if (preg_match("/^\.\.\//", $outlogin_url)) {
$outlogin_url = urlencode($g4[url]."/".preg_replace("/^\.\.\//", "", $outlogin_url));
}
else {
$purl = parse_url($g4[url]);
if ($purl[path]) {
$path = urlencode($purl[path]);
$urlencode = preg_replace("/".$path."/", "", $urlencode);
}
$outlogin_url = $g4[url].$urlencode;
}
}
else {
$outlogin_url = $g4[url];
}
}
else {
$outlogin_url = $urlencode;
}
?>
<link rel="stylesheet" href="../css/member.css?v=20160606" type="text/css">
<script type="text/javascript" src="../js/capslock.js"></script>
<div id="index">
<header class='header'></header>
<form name="flogin" method="post" onsubmit="return flogin_submit(this);" autocomplete="off">
<input type="hidden" name="url" value='%2Fcontent%2Fmain.php'>
<div class="loginbg">
<div class="loginbox">
<h2>Login</h2>
<table border='0' cellpadding='0' cellspacing='0' width='100%'>
<col width='100' /><col />
<tr>
<th>Id</th>
<td><INPUT type=text maxLength=20 size=15 name=mb_id id="mb_id" minlength="2" class="input-text" tabindex='1'></td>
</tr>
<tr>
<th>Password</th>
<td><INPUT type=password maxLength=20 size=15 name=mb_password id="login_mb_password" itemname="패스워드" required onkeypress="check_capslock(event, 'login_mb_password');" class="input-password" tabindex='2' /></td>
</tr>
<tr>
<th></th>
<td><input type="submit" value="Login" class='wl-button' tabindex='4' id="login-btn" /></td>
</tr>
</table>
<table border='0' cellpadding='5' cellspacing='0' style='margin-top:30px;'>
<col width='100' /><col />
<tr>
<th>자동등록방지</th>
<td>왼쪽 글자를 입력하세요.</th>
</tr>
<tr valign='top'>
<th><img id='kcaptcha_image' border='0' width='80' height="28" onclick="imageClick();" style="float:left; cursor:pointer;" title="글자가 잘안보이는 경우 클릭하시면 새로운 글자가 나옵니다." /></th>
<td>
<input type=text class=input-text maxLength=8 size=8 name=wr_key itemname="자동등록방지" required style='ime-mode:inactive;' tabindex='3'>
</td>
</tr>
</table>
</div>
</div>
</form>
<footer class='footer'></footer>
</div>
<script type="text/javascript"> var md5_norobot_key = ''; </script>
<script type="text/javascript" src="../js/prototype.js"></script>
<script type="text/javascript" src="../js/md5.js"></script>
<script language='Javascript'>
function imageClick() {
var url = "./bbs/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", "./bbs/kcaptcha_image.php?t=" + (new Date).getTime());
document.getElementById('kcaptcha_image').src = img.getAttribute('src');
md5_norobot_key = result;
}
Event.observe(window, "load", imageClick);
document.flogin.mb_id.focus();
function flogin_submit(f)
{
if (typeof(f.wr_key) != 'undefined') {
if (hex_md5(f.wr_key.value) != md5_norobot_key) {
alert('자동등록방지용 코드가 맞지 않습니다.');
f.wr_key.activate();
return false;
}
}
f.action = './bbs/login_check.php';
return true;
}
</script>
<!-- 로그인 전 외부로그인 끝 -->
!-->
md5_norobot_key 키값이 계속 비워져 있어 자동등록방지 코드가 틀렸다고 나오네요...
크롬 개발자모드로 체크해보면 페이지 로딩 후 kcaptcha_session.php까지 로딩된것은
확인되는데 콘솔에서 확인해도 md5_norobot_key값은 없구요...
무엇이 문제 일까요 ㅠㅠ 참고로 해당 페이지는 outlogin.skin.1.php입니다.
!-->
답변을 작성하시기 전에 로그인 해주세요.