입력 금지 메일이 작동하지 않습니다 ㅠㅠ!! 정보
입력 금지 메일이 작동하지 않습니다 ㅠㅠ!!
본문
이름, 주소, 남녀, 생일 등을 입력하지 않아도 가입할 수 있도록 수정했는데 ..
어찌된 영문인지 입력금지메일이 작동하지 않고 있습니다 ㅠ_ㅠ !!
register_form.php 입니다.
===================================
<?
include_once("./_common.php");
// 불법접근을 막도록 토큰생성
$token = md5(uniqid(rand(), true));
set_session("ss_token", $token);
if ($w == "") {
// 회원 로그인을 한 경우 회원가입 할 수 없다
// 경고창이 뜨는것을 막기위해 아래의 코드로 대체
// alert("이미 로그인중이므로 회원 가입 하실 수 없습니다.", "./");
if ($member[mb_id])
goto_url($g4[path]);
// 리퍼러 체크
referer_check();
if (!$_POST[agree])
alert("회원가입약관의 내용에 동의하셔야 회원가입 하실 수 있습니다.", "./register.php");
if (!$_POST[agree2])
alert("개인정보취급방침의 내용에 동의하셔야 회원가입 하실 수 있습니다.", "./register.php");
// 주민등록번호를 사용한다면 중복검사를 합니다.
/*
if ($config[cf_use_jumin]) {
$jumin = sql_password($mb_jumin);
$row = sql_fetch(" select mb_name from $g4[member_table] where mb_jumin = '$jumin' ");
if ($row[mb_name]) {
if ($row[mb_name] == $mb_name)
alert("이미 가입되어 있습니다.");
else
alert("다른 이름으로 같은 주민등록번호가 이미 가입되어 있습니다.\\n\\n관리자에게 문의해 주십시오.");
}
// 주민등록번호의 7번째 한자리 숫자
$y = substr($mb_jumin, 6, 1);
// 성별은 F, M 으로 나눈다.
// 주민등록번호의 7번째 자리가 홀수이면 남자(Male), 짝수이면 여자(Female)
$sex = $y % 2 == 0 ? "F" : "M";
// 생일은 8자리로 만든다 (나중에 검색을 편하게 하기 위함)
// 주민등록번호 앞자리를 그냥 생일로 사용함 ㅠㅠ
// 주민등록번호 7번째 자리를 따져서...
$birth = substr($mb_jumin, 0, 6);
if ($y == 9 || $y == 0) // 1800년대생 (계시려나?)
$birth = "18" . $birth;
else if ($y == 1 || $y == 2) // 1900년대생
$birth = "19" . $birth;
else if ($y == 3 || $y == 4) // 2000년대생
$birth = "20" . $birth;
else // 오류
$birth = "xx" . $birth;
}
*/
$member[mb_birth] = $birth;
$member[mb_sex] = $sex;
$member[mb_name] = $mb_name;
$g4[title] = "회원 가입";
}
else if ($w == "u")
{
if ($is_admin)
alert("관리자의 회원정보는 관리자 화면에서 수정해 주십시오.", $g4[path]);
if (!$member[mb_id])
alert("로그인 후 이용하여 주십시오.", $g4[path]);
if ($member[mb_id] != $mb_id)
alert("로그인된 회원과 넘어온 정보가 서로 다릅니다.");
/*
if (!($member[mb_password] == sql_password($_POST[mb_password]) && $_POST[mb_password]))
alert("패스워드가 틀립니다.");
// 수정 후 다시 이 폼으로 돌아오기 위해 임시로 저장해 놓음
set_session("ss_tmp_password", $_POST[mb_password]);
*/
if ($_POST['mb_password']) {
// 수정된 정보를 업데이트후 되돌아 온것이라면 패스워드가 암호화 된채로 넘어온것임
if ($_POST['is_update'])
$tmp_password = $_POST['mb_password'];
else
$tmp_password = sql_password($_POST['mb_password']);
if ($member['mb_password'] != $tmp_password)
alert("패스워드가 틀립니다.");
}
$g4[title] = "회원 정보 수정";
$member[mb_email] = get_text($member[mb_email]);
$member[mb_homepage] = get_text($member[mb_homepage]);
$member[mb_password_q] = get_text($member[mb_password_q]);
$member[mb_password_a] = get_text($member[mb_password_a]);
$member[mb_birth] = get_text($member[mb_birth]);
$member[mb_tel] = get_text($member[mb_tel]);
$member[mb_hp] = get_text($member[mb_hp]);
$member[mb_addr1] = get_text($member[mb_addr1]);
$member[mb_addr2] = get_text($member[mb_addr2]);
$member[mb_signature] = get_text($member[mb_signature]);
$member[mb_recommend] = get_text($member[mb_recommend]);
$member[mb_profile] = get_text($member[mb_profile]);
$member[mb_1] = get_text($member[mb_1]);
$member[mb_2] = get_text($member[mb_2]);
$member[mb_3] = get_text($member[mb_3]);
$member[mb_4] = get_text($member[mb_4]);
$member[mb_5] = get_text($member[mb_5]);
$member[mb_6] = get_text($member[mb_6]);
$member[mb_7] = get_text($member[mb_7]);
$member[mb_8] = get_text($member[mb_8]);
$member[mb_9] = get_text($member[mb_9]);
$member[mb_10] = get_text($member[mb_10]);
} else
alert("w 값이 제대로 넘어오지 않았습니다.");
// 회원아이콘 경로
$mb_icon = "$g4[path]/data/member/".substr($member[mb_id],0,2)."/$member[mb_id].gif";
$member_skin_path = "$g4[path]/skin/member/$config[cf_member_skin]";
include_once("./_head.php");
include_once("./norobot.inc.php"); // 자동등록방지
include_once("$member_skin_path/register_form.skin.php");
include_once("./_tail.php");
?>
=========================
register_form.skin.php 소스입니다.
********************************
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
if ($g4[https_url]){
$action = "$g4[https_url]/$g4[bbs]/register_form_update.php";
}else{
$action = "./register_form_update.php";
}
?>
<link type="text/css" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.4/themes/base/jquery-ui.css" rel="stylesheet" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.4/jquery-ui.min.js"></script>
<script type="text/javascript">
/* Korean initialisation for the jQuery calendar extension. */
/* Written by DaeKwon Kang (*** 개인정보보호를 위한 이메일주소 노출방지 ***). */
jQuery(function($){
$.datepicker.regional['ko'] = {
closeText: '닫기',
prevText: '이전달',
nextText: '다음달',
currentText: '오늘',
monthNames: ['1월(JAN)','2월(FEB)','3월(MAR)','4월(APR)','5월(MAY)','6월(JUN)',
'7월(JUL)','8월(AUG)','9월(SEP)','10월(OCT)','11월(NOV)','12월(DEC)'],
monthNamesShort: ['1월','2월','3월','4월','5월','6월',
'7월','8월','9월','10월','11월','12월'],
dayNames: ['일','월','화','수','목','금','토'],
dayNamesShort: ['일','월','화','수','목','금','토'],
dayNamesMin: ['일','월','화','수','목','금','토'],
weekHeader: 'Wk',
dateFormat: 'yymmdd',
firstDay: 0,
isRTL: false,
showMonthAfterYear: true,
yearSuffix: ''};
$.datepicker.setDefaults($.datepicker.regional['ko']);
$('#mb_birth').datepicker({
showOn: 'button',
buttonImage: '<?=$g4[path]?>/img/calendar.gif',
buttonImageOnly: true,
buttonText: "달력",
changeMonth: true,
changeYear: true,
showButtonPanel: true,
yearRange: 'c-99:c+99',
maxDate: '+0d'
});
});
var member_skin_path = "<?=$member_skin_path?>";
</script>
<script type="text/javascript" src="<?=$member_skin_path?>/ajax_register_form.jquery.js"></script>
<script type="text/javascript" src="<?=$g4[path]?>/js/md5.js"></script>
<script type="text/javascript" src="<?=$g4[path]?>/js/sideview.js"></script>
<div id="registerform" class="confirm">
<form id="fregisterform" name="fregisterform" method="post" action="<?=$action?>" enctype="multipart/form-data" autocomplete="off">
<?if($w == ''){?>
<h1>Create your account</h1>
<?}else{?>
<h1>Modify Your Account</h1>
<?}?>
<input type="hidden" name="w" value="<?=$w?>" />
<input type="hidden" name="url" value="<?=$urlencode?>" />
<input type="hidden" name="mb_jumin" value="<?=$jumin?>" />
<input type="hidden" name="mb_id_enabled" value="" id="mb_id_enabled" />
<input type="hidden" name="mb_nick_enabled" value="" id="mb_nick_enabled" />
<input type="hidden" name="mb_email_enabled" value="" id="mb_email_enabled" />
<input type="hidden" name="mb_name" itemname="이름" value="익명" />
<table>
<colgroup>
<col style="width:100px;" />
<col />
</colgroup>
<tbody>
<tr>
<th>아이디</th>
<td>
<input class="ed" maxlength="20" id="reg_mb_id" name="mb_id" value="<?=$member[mb_id]?>" <? if ($w=='u') { echo "readonly style=\"background-color:#dddddd;\""; } ?> <? if ($w=='') { echo "onblur=\"reg_mb_id_check();\""; } ?> />
<span class="msg" id="msg_mb_id"></span>
<p class="desc">영문자, 숫자, _ 만 입력 가능. 최소 3자이상 입력하세요.</p>
</td>
</tr>
<tr>
<th>패스워드</th>
<td><input class="ed" type="password" name="mb_password" maxlength="20" <?=($w=="")?"required":"";?> itemname="패스워드" /></td>
</tr>
<tr>
<th>패스워드 확인</th>
<td><input class="ed" type="password" name="mb_password_re" maxlength="20" <?=($w=="")?"required":"";?> itemname="패스워드 확인" /></td>
</tr>
<? if ($member[mb_nick_date] <= date("Y-m-d", $g4[server_time] - ($config[cf_nick_modify] * 86400))) { // 별명수정일이 지났다면 수정가능 ?>
<tr>
<th>별명</th>
<td>
<input type="hidden" name="mb_nick_default" value="<?=$member[mb_nick]?>" />
<input class="ed" type="text" id="reg_mb_nick" name="mb_nick" maxlength="18" value="<?=$member[mb_nick]?>" onblur="reg_mb_nick_check();" />
<span class="msg" id="msg_mb_nick"></span>
공백없이 한글,영문,숫자만 입력 가능 (최대 18자)
<?if((int)$config[cf_nick_modify] > 0){?>
<p class="desc">별명을 바꾸시면 앞으로 <?=(int)$config[cf_nick_modify]?>일 이내에는 변경 할 수 없습니다.</p>
<?}?>
</td>
</tr>
<? } else { ?>
<input type="hidden" name="mb_nick_default" value="<?=$member[mb_nick]?>" />
<input type="hidden" name="mb_nick" value="<?=$member[mb_nick]?>" />
<? } ?>
<tr>
<th>E-mail</th>
<td>
<input type="hidden" name="old_email" value="<?=$member[mb_email]?>" />
<input class="ed" type="text" id="reg_mb_email" name="mb_email" size="38" maxlength="100" value="<?=$member[mb_email]?>" onblur="reg_mb_email_check();">
<span class="msg" id="msg_mb_email"></span>
<? if ($config[cf_use_email_certify]) { ?>
<? if ($w=='') { echo "<br>e-mail 로 발송된 내용을 확인한 후 인증하셔야 회원가입이 완료됩니다.<br>
<font color='red'>가입 후 인증 메일이 도착하지 않았다면 스팸함도 확인해보시길 바랍니다.</font>"; } ?>
<? if ($w=='u') { echo "<br>e-mail 주소를 변경하시면 다시 인증하셔야 합니다."; } ?>
<? } ?>
</td>
</tr>
<? if ($config[cf_use_homepage]) { ?>
<tr>
<th>홈페이지</th>
<td>
<input class="ed" type="text" name="mb_homepage" size="38" maxlength="255" <?=$config[cf_req_homepage]?"required":"";?> itemname="홈페이지" value="<?=$member[mb_homepage]?>" />
</td>
</tr>
<? } ?>
<? if ($config[cf_use_tel]) { ?>
<tr>
<th>전화번호</th>
<td>
<input class="ed" type="text" name="mb_tel" size="21" maxlength="20" <?=$config[cf_req_tel]?"required":"";?> itemname="전화번호" value="<?=$member[mb_tel]?>" />
</td>
</tr>
<? } ?>
<? if ($config[cf_use_hp]) { ?>
<tr>
<th>핸드폰번호</th>
<td>
<input class="ed" type="text" name="mb_hp" size="21" maxlength="20" <?=$config[cf_req_hp]?"required":"";?> itemname="핸드폰번호" value="<?=$member[mb_hp]?>" />
</td>
</tr>
<? } ?>
<? if ($config[cf_use_addr]) { ?>
<tr>
<th>주소</th>
<td>
<input class="ed" type="text" name="mb_zip1" size="4" maxlength="3" readonly <?=$config[cf_req_addr]?"required":"";?> itemname="우편번호 앞자리" value="<?=$member[mb_zip1]?>" /> - <input class="ed" type="text" name="mb_zip2" size="4" maxlength="3" readonly <?=$config[cf_req_addr]?"required":"";?> itemname="우편번호 뒷자리" value="<?=$member[mb_zip2]?>" /> <button type="button" onclick="win_zip('fregisterform', 'mb_zip1', 'mb_zip2', 'mb_addr1', 'mb_addr2');"><img width="91" height="20" src="<?=$member_skin_path?>/img/post_search_btn.gif" border=0 align=absmiddle></button>
<input class="ed" type="text" name="mb_addr1" size="60" readonly <?=$config[cf_req_addr]?"required":"";?> itemname="주소" value="<?=$member[mb_addr1]?>" />
<input class="ed" type="text" name="mb_addr2" size="60" <?=$config[cf_req_addr]?"required":"";?> itemname="상세주소" value="<?=$member[mb_addr2]?>" />
</td>
</tr>
<? } ?>
<? if ($config[cf_use_signature]) { ?>
<tr>
<th>서명(자기소개)</th>
<td>
<textarea name="mb_signature" class="tx" rows="3" style="width:95%;" <?=$config[cf_req_signature]?'required':'';?> itemname="서명"><?=$member[mb_signature]?></textarea>
</td>
</tr>
<? } ?>
<? if ($config[cf_use_profile]) { ?>
<tr>
<th>자기소개</th>
<td>
<textarea name="mb_profile" class="tx" rows="3" style="width:95%;" <?=$config[cf_req_profile]?'required':'';?> itemname="자기 소개"><?=$member[mb_profile]?></textarea>
</td>
</tr>
<? } ?>
<? if ($member[mb_level] >= $config[cf_icon_level]) { ?>
<tr>
<th>회원아이콘</th>
<td>
<INPUT class=ed type=file name='mb_icon' size=30>
<p class="desc">이미지 크기는 가로(<?=$config[cf_member_icon_width]?>픽셀)x세로(<?=$config[cf_member_icon_height]?>픽셀) 이하로 해주세요.<br> (gif,jpg,png 가능 / 용량:<?=number_format($config[cf_member_icon_size])?>바이트 이하만 등록됩니다.)</p>
<? if ($w == "u" && file_exists($mb_icon)) { ?>
<br /><img src="<?=$mb_icon?>" align="absmiddle" /> <input type="checkbox" name="del_mb_icon" value="1" />삭제
<? } ?>
</td>
</tr>
<? } ?>
<? if ($w == "" && $config[cf_use_recommend]) { ?>
<tr>
<th>추천인아이디</th>
<td><input type="text" name="mb_recommend" class="ed" /></td>
</tr>
<? } ?>
<tr>
<th>자동등록방지</th>
<td>
<div style="float:left; margin:0; margin-right:10px;"><img id="kcaptcha_image" /></div>
<input type="input" class="ed" size="10" name="wr_key" itemname="자동등록방지" required />
<p class="desc">광고, 스팸성 아이디 가입을 방지하기 위한 절차입니다.<br />좌측 이미지의 내용을 입력해주세요.</p>
</td>
</tr>
</tbody>
</table>
<div class="register_submit">
<input type="submit" class="submit" value="회원가입 완료하기" />
</div>
</form>
</div>
<script type="text/javascript" src="<?="$g4[path]/js/jquery.kcaptcha.js"?>"></script>
<script type="text/javascript">
$(function() {
// 폼의 첫번째 입력박스에 포커스 주기
$("#fregisterform :input[type="text"]:visible:enabled:first").focus();
});
// submit 최종 폼체크
function fregisterform_submit(f)
{
// 회원아이디 검사
if (f.w.value == "") {
reg_mb_id_check();
if (document.getElementById('mb_id_enabled').value!='000') {
alert('회원아이디를 입력하지 않았거나 입력에 오류가 있습니다.');
document.getElementById('reg_mb_id').select();
return false;
}
}
if (f.w.value == '') {
if (f.mb_password.value.length < 3) {
alert('패스워드를 3글자 이상 입력하십시오.');
f.mb_password.focus();
return false;
}
}
if (f.mb_password.value != f.mb_password_re.value) {
alert('패스워드가 같지 않습니다.');
f.mb_password_re.focus();
return false;
}
if (f.mb_password.value.length > 0) {
if (f.mb_password_re.value.length < 3) {
alert('패스워드를 3글자 이상 입력하십시오.');
f.mb_password_re.focus();
return false;
}
}
// 이름 검사
if (f.w.value=='') {
if (f.mb_name.value.length < 1) {
alert('이름을 입력하십시오.');
f.mb_name.focus();
return false;
}
var pattern = /([^가-힣\x20])/i;
if (pattern.test(f.mb_name.value)) {
alert('이름은 한글로 입력하십시오.');
f.mb_name.focus();
return false;
}
}
// 별명 검사
if ((f.w.value == "") ||
(f.w.value == "u" && f.mb_nick.defaultValue != f.mb_nick.value)) {
reg_mb_nick_check();
if (document.getElementById('mb_nick_enabled').value!='000') {
alert('별명을 입력하지 않았거나 입력에 오류가 있습니다.');
document.getElementById('reg_mb_nick').select();
return false;
}
}
// E-mail 검사
if ((f.w.value == "") ||
(f.w.value == "u" && f.mb_email.defaultValue != f.mb_email.value)) {
reg_mb_email_check();
if (document.getElementById('mb_email_enabled').value!='000') {
alert('E-mail을 입력하지 않았거나 입력에 오류가 있습니다.');
document.getElementById('reg_mb_email').select();
return false;
}
// 사용할 수 없는 E-mail 도메인
var domain = prohibit_email_check(f.mb_email.value);
if (domain) {
alert("'"+domain+"'은(는) 사용하실 수 없는 메일입니다.");
document.getElementById('reg_mb_email').focus();
return false;
}
}
if (typeof(f.mb_birth) != 'undefined') {
if (f.mb_birth.value.length < 1) {
alert('달력 버튼을 클릭하여 생일을 입력하여 주십시오.');
//f.mb_birth.focus();
return false;
}
var todays = <?=date("Ymd", $g4['server_time']);?>;
// 오늘날짜에서 생일을 빼고 거기서 140000 을 뺀다.
// 결과가 0 이상의 양수이면 만 14세가 지난것임
var n = todays - parseInt(f.mb_birth.value) - 140000;
if (n < 0) {
alert("만 14세가 지나지 않은 어린이는 정보통신망 이용촉진 및 정보보호 등에 관한 법률\n\n제 31조 1항의 규정에 의하여 법정대리인의 동의를 얻어야 하므로\n\n법정대리인의 이름과 연락처를 '자기소개'란에 별도로 입력하시기 바랍니다.");
return false;
}
}
if (typeof(f.mb_sex) != 'undefined') {
if (f.mb_sex.value == '') {
alert('성별을 선택하여 주십시오.');
f.mb_sex.focus();
return false;
}
}
if (typeof f.mb_icon != 'undefined') {
if (f.mb_icon.value) {
if (!f.mb_icon.value.toLowerCase().match(/.(gif|jpg|jpeg|png)$/i)) {
alert('회원아이콘이 gif, jpg, png 파일이 아닙니다.');
f.mb_icon.focus();
return false;
}
}
}
if (typeof(f.mb_recommend) != 'undefined') {
if (f.mb_id.value == f.mb_recommend.value) {
alert('본인을 추천할 수 없습니다.');
f.mb_recommend.focus();
return false;
}
}
if (!check_kcaptcha(f.wr_key)) {
return false;
}
// 보안인증관련 코드로 반드시 포함되어야 합니다.
set_cookie("<?=md5($token)?>", "<?=base64_encode($token)?>", 1, "<?=$g4['cookie_domain']?>");
return true;
}
// 금지 메일 도메인 검사
function prohibit_email_check(email)
{
email = email.toLowerCase();
var prohibit_email = "<?=trim(strtolower(preg_replace("/(\r\n|\r|\n)/", ",", $config[cf_prohibit_email])));?>";
var s = prohibit_email.split(",");
var tmp = email.split("@");
var domain = tmp[tmp.length - 1]; // 메일 도메인만 얻는다
for (i=0; i<s.length; i++) {
if (s[i] == domain)
return domain;
}
return "";
}
</script>
**********************************
정말 염치없는 .. 힘든 질문이지만 ..
없는 지식을 짜보고 짜봐도 해결되지 않아 이렇게 질문을 하게되었습니다 !..
힌트라도 좋으니 .. 어떤 답변이라도 부탁을 드립니다 ㅠ_ㅠ !!
어찌된 영문인지 입력금지메일이 작동하지 않고 있습니다 ㅠ_ㅠ !!
register_form.php 입니다.
===================================
<?
include_once("./_common.php");
// 불법접근을 막도록 토큰생성
$token = md5(uniqid(rand(), true));
set_session("ss_token", $token);
if ($w == "") {
// 회원 로그인을 한 경우 회원가입 할 수 없다
// 경고창이 뜨는것을 막기위해 아래의 코드로 대체
// alert("이미 로그인중이므로 회원 가입 하실 수 없습니다.", "./");
if ($member[mb_id])
goto_url($g4[path]);
// 리퍼러 체크
referer_check();
if (!$_POST[agree])
alert("회원가입약관의 내용에 동의하셔야 회원가입 하실 수 있습니다.", "./register.php");
if (!$_POST[agree2])
alert("개인정보취급방침의 내용에 동의하셔야 회원가입 하실 수 있습니다.", "./register.php");
// 주민등록번호를 사용한다면 중복검사를 합니다.
/*
if ($config[cf_use_jumin]) {
$jumin = sql_password($mb_jumin);
$row = sql_fetch(" select mb_name from $g4[member_table] where mb_jumin = '$jumin' ");
if ($row[mb_name]) {
if ($row[mb_name] == $mb_name)
alert("이미 가입되어 있습니다.");
else
alert("다른 이름으로 같은 주민등록번호가 이미 가입되어 있습니다.\\n\\n관리자에게 문의해 주십시오.");
}
// 주민등록번호의 7번째 한자리 숫자
$y = substr($mb_jumin, 6, 1);
// 성별은 F, M 으로 나눈다.
// 주민등록번호의 7번째 자리가 홀수이면 남자(Male), 짝수이면 여자(Female)
$sex = $y % 2 == 0 ? "F" : "M";
// 생일은 8자리로 만든다 (나중에 검색을 편하게 하기 위함)
// 주민등록번호 앞자리를 그냥 생일로 사용함 ㅠㅠ
// 주민등록번호 7번째 자리를 따져서...
$birth = substr($mb_jumin, 0, 6);
if ($y == 9 || $y == 0) // 1800년대생 (계시려나?)
$birth = "18" . $birth;
else if ($y == 1 || $y == 2) // 1900년대생
$birth = "19" . $birth;
else if ($y == 3 || $y == 4) // 2000년대생
$birth = "20" . $birth;
else // 오류
$birth = "xx" . $birth;
}
*/
$member[mb_birth] = $birth;
$member[mb_sex] = $sex;
$member[mb_name] = $mb_name;
$g4[title] = "회원 가입";
}
else if ($w == "u")
{
if ($is_admin)
alert("관리자의 회원정보는 관리자 화면에서 수정해 주십시오.", $g4[path]);
if (!$member[mb_id])
alert("로그인 후 이용하여 주십시오.", $g4[path]);
if ($member[mb_id] != $mb_id)
alert("로그인된 회원과 넘어온 정보가 서로 다릅니다.");
/*
if (!($member[mb_password] == sql_password($_POST[mb_password]) && $_POST[mb_password]))
alert("패스워드가 틀립니다.");
// 수정 후 다시 이 폼으로 돌아오기 위해 임시로 저장해 놓음
set_session("ss_tmp_password", $_POST[mb_password]);
*/
if ($_POST['mb_password']) {
// 수정된 정보를 업데이트후 되돌아 온것이라면 패스워드가 암호화 된채로 넘어온것임
if ($_POST['is_update'])
$tmp_password = $_POST['mb_password'];
else
$tmp_password = sql_password($_POST['mb_password']);
if ($member['mb_password'] != $tmp_password)
alert("패스워드가 틀립니다.");
}
$g4[title] = "회원 정보 수정";
$member[mb_email] = get_text($member[mb_email]);
$member[mb_homepage] = get_text($member[mb_homepage]);
$member[mb_password_q] = get_text($member[mb_password_q]);
$member[mb_password_a] = get_text($member[mb_password_a]);
$member[mb_birth] = get_text($member[mb_birth]);
$member[mb_tel] = get_text($member[mb_tel]);
$member[mb_hp] = get_text($member[mb_hp]);
$member[mb_addr1] = get_text($member[mb_addr1]);
$member[mb_addr2] = get_text($member[mb_addr2]);
$member[mb_signature] = get_text($member[mb_signature]);
$member[mb_recommend] = get_text($member[mb_recommend]);
$member[mb_profile] = get_text($member[mb_profile]);
$member[mb_1] = get_text($member[mb_1]);
$member[mb_2] = get_text($member[mb_2]);
$member[mb_3] = get_text($member[mb_3]);
$member[mb_4] = get_text($member[mb_4]);
$member[mb_5] = get_text($member[mb_5]);
$member[mb_6] = get_text($member[mb_6]);
$member[mb_7] = get_text($member[mb_7]);
$member[mb_8] = get_text($member[mb_8]);
$member[mb_9] = get_text($member[mb_9]);
$member[mb_10] = get_text($member[mb_10]);
} else
alert("w 값이 제대로 넘어오지 않았습니다.");
// 회원아이콘 경로
$mb_icon = "$g4[path]/data/member/".substr($member[mb_id],0,2)."/$member[mb_id].gif";
$member_skin_path = "$g4[path]/skin/member/$config[cf_member_skin]";
include_once("./_head.php");
include_once("./norobot.inc.php"); // 자동등록방지
include_once("$member_skin_path/register_form.skin.php");
include_once("./_tail.php");
?>
=========================
register_form.skin.php 소스입니다.
********************************
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
if ($g4[https_url]){
$action = "$g4[https_url]/$g4[bbs]/register_form_update.php";
}else{
$action = "./register_form_update.php";
}
?>
<link type="text/css" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.4/themes/base/jquery-ui.css" rel="stylesheet" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.4/jquery-ui.min.js"></script>
<script type="text/javascript">
/* Korean initialisation for the jQuery calendar extension. */
/* Written by DaeKwon Kang (*** 개인정보보호를 위한 이메일주소 노출방지 ***). */
jQuery(function($){
$.datepicker.regional['ko'] = {
closeText: '닫기',
prevText: '이전달',
nextText: '다음달',
currentText: '오늘',
monthNames: ['1월(JAN)','2월(FEB)','3월(MAR)','4월(APR)','5월(MAY)','6월(JUN)',
'7월(JUL)','8월(AUG)','9월(SEP)','10월(OCT)','11월(NOV)','12월(DEC)'],
monthNamesShort: ['1월','2월','3월','4월','5월','6월',
'7월','8월','9월','10월','11월','12월'],
dayNames: ['일','월','화','수','목','금','토'],
dayNamesShort: ['일','월','화','수','목','금','토'],
dayNamesMin: ['일','월','화','수','목','금','토'],
weekHeader: 'Wk',
dateFormat: 'yymmdd',
firstDay: 0,
isRTL: false,
showMonthAfterYear: true,
yearSuffix: ''};
$.datepicker.setDefaults($.datepicker.regional['ko']);
$('#mb_birth').datepicker({
showOn: 'button',
buttonImage: '<?=$g4[path]?>/img/calendar.gif',
buttonImageOnly: true,
buttonText: "달력",
changeMonth: true,
changeYear: true,
showButtonPanel: true,
yearRange: 'c-99:c+99',
maxDate: '+0d'
});
});
var member_skin_path = "<?=$member_skin_path?>";
</script>
<script type="text/javascript" src="<?=$member_skin_path?>/ajax_register_form.jquery.js"></script>
<script type="text/javascript" src="<?=$g4[path]?>/js/md5.js"></script>
<script type="text/javascript" src="<?=$g4[path]?>/js/sideview.js"></script>
<div id="registerform" class="confirm">
<form id="fregisterform" name="fregisterform" method="post" action="<?=$action?>" enctype="multipart/form-data" autocomplete="off">
<?if($w == ''){?>
<h1>Create your account</h1>
<?}else{?>
<h1>Modify Your Account</h1>
<?}?>
<input type="hidden" name="w" value="<?=$w?>" />
<input type="hidden" name="url" value="<?=$urlencode?>" />
<input type="hidden" name="mb_jumin" value="<?=$jumin?>" />
<input type="hidden" name="mb_id_enabled" value="" id="mb_id_enabled" />
<input type="hidden" name="mb_nick_enabled" value="" id="mb_nick_enabled" />
<input type="hidden" name="mb_email_enabled" value="" id="mb_email_enabled" />
<input type="hidden" name="mb_name" itemname="이름" value="익명" />
<table>
<colgroup>
<col style="width:100px;" />
<col />
</colgroup>
<tbody>
<tr>
<th>아이디</th>
<td>
<input class="ed" maxlength="20" id="reg_mb_id" name="mb_id" value="<?=$member[mb_id]?>" <? if ($w=='u') { echo "readonly style=\"background-color:#dddddd;\""; } ?> <? if ($w=='') { echo "onblur=\"reg_mb_id_check();\""; } ?> />
<span class="msg" id="msg_mb_id"></span>
<p class="desc">영문자, 숫자, _ 만 입력 가능. 최소 3자이상 입력하세요.</p>
</td>
</tr>
<tr>
<th>패스워드</th>
<td><input class="ed" type="password" name="mb_password" maxlength="20" <?=($w=="")?"required":"";?> itemname="패스워드" /></td>
</tr>
<tr>
<th>패스워드 확인</th>
<td><input class="ed" type="password" name="mb_password_re" maxlength="20" <?=($w=="")?"required":"";?> itemname="패스워드 확인" /></td>
</tr>
<? if ($member[mb_nick_date] <= date("Y-m-d", $g4[server_time] - ($config[cf_nick_modify] * 86400))) { // 별명수정일이 지났다면 수정가능 ?>
<tr>
<th>별명</th>
<td>
<input type="hidden" name="mb_nick_default" value="<?=$member[mb_nick]?>" />
<input class="ed" type="text" id="reg_mb_nick" name="mb_nick" maxlength="18" value="<?=$member[mb_nick]?>" onblur="reg_mb_nick_check();" />
<span class="msg" id="msg_mb_nick"></span>
공백없이 한글,영문,숫자만 입력 가능 (최대 18자)
<?if((int)$config[cf_nick_modify] > 0){?>
<p class="desc">별명을 바꾸시면 앞으로 <?=(int)$config[cf_nick_modify]?>일 이내에는 변경 할 수 없습니다.</p>
<?}?>
</td>
</tr>
<? } else { ?>
<input type="hidden" name="mb_nick_default" value="<?=$member[mb_nick]?>" />
<input type="hidden" name="mb_nick" value="<?=$member[mb_nick]?>" />
<? } ?>
<tr>
<th>E-mail</th>
<td>
<input type="hidden" name="old_email" value="<?=$member[mb_email]?>" />
<input class="ed" type="text" id="reg_mb_email" name="mb_email" size="38" maxlength="100" value="<?=$member[mb_email]?>" onblur="reg_mb_email_check();">
<span class="msg" id="msg_mb_email"></span>
<? if ($config[cf_use_email_certify]) { ?>
<? if ($w=='') { echo "<br>e-mail 로 발송된 내용을 확인한 후 인증하셔야 회원가입이 완료됩니다.<br>
<font color='red'>가입 후 인증 메일이 도착하지 않았다면 스팸함도 확인해보시길 바랍니다.</font>"; } ?>
<? if ($w=='u') { echo "<br>e-mail 주소를 변경하시면 다시 인증하셔야 합니다."; } ?>
<? } ?>
</td>
</tr>
<? if ($config[cf_use_homepage]) { ?>
<tr>
<th>홈페이지</th>
<td>
<input class="ed" type="text" name="mb_homepage" size="38" maxlength="255" <?=$config[cf_req_homepage]?"required":"";?> itemname="홈페이지" value="<?=$member[mb_homepage]?>" />
</td>
</tr>
<? } ?>
<? if ($config[cf_use_tel]) { ?>
<tr>
<th>전화번호</th>
<td>
<input class="ed" type="text" name="mb_tel" size="21" maxlength="20" <?=$config[cf_req_tel]?"required":"";?> itemname="전화번호" value="<?=$member[mb_tel]?>" />
</td>
</tr>
<? } ?>
<? if ($config[cf_use_hp]) { ?>
<tr>
<th>핸드폰번호</th>
<td>
<input class="ed" type="text" name="mb_hp" size="21" maxlength="20" <?=$config[cf_req_hp]?"required":"";?> itemname="핸드폰번호" value="<?=$member[mb_hp]?>" />
</td>
</tr>
<? } ?>
<? if ($config[cf_use_addr]) { ?>
<tr>
<th>주소</th>
<td>
<input class="ed" type="text" name="mb_zip1" size="4" maxlength="3" readonly <?=$config[cf_req_addr]?"required":"";?> itemname="우편번호 앞자리" value="<?=$member[mb_zip1]?>" /> - <input class="ed" type="text" name="mb_zip2" size="4" maxlength="3" readonly <?=$config[cf_req_addr]?"required":"";?> itemname="우편번호 뒷자리" value="<?=$member[mb_zip2]?>" /> <button type="button" onclick="win_zip('fregisterform', 'mb_zip1', 'mb_zip2', 'mb_addr1', 'mb_addr2');"><img width="91" height="20" src="<?=$member_skin_path?>/img/post_search_btn.gif" border=0 align=absmiddle></button>
<input class="ed" type="text" name="mb_addr1" size="60" readonly <?=$config[cf_req_addr]?"required":"";?> itemname="주소" value="<?=$member[mb_addr1]?>" />
<input class="ed" type="text" name="mb_addr2" size="60" <?=$config[cf_req_addr]?"required":"";?> itemname="상세주소" value="<?=$member[mb_addr2]?>" />
</td>
</tr>
<? } ?>
<? if ($config[cf_use_signature]) { ?>
<tr>
<th>서명(자기소개)</th>
<td>
<textarea name="mb_signature" class="tx" rows="3" style="width:95%;" <?=$config[cf_req_signature]?'required':'';?> itemname="서명"><?=$member[mb_signature]?></textarea>
</td>
</tr>
<? } ?>
<? if ($config[cf_use_profile]) { ?>
<tr>
<th>자기소개</th>
<td>
<textarea name="mb_profile" class="tx" rows="3" style="width:95%;" <?=$config[cf_req_profile]?'required':'';?> itemname="자기 소개"><?=$member[mb_profile]?></textarea>
</td>
</tr>
<? } ?>
<? if ($member[mb_level] >= $config[cf_icon_level]) { ?>
<tr>
<th>회원아이콘</th>
<td>
<INPUT class=ed type=file name='mb_icon' size=30>
<p class="desc">이미지 크기는 가로(<?=$config[cf_member_icon_width]?>픽셀)x세로(<?=$config[cf_member_icon_height]?>픽셀) 이하로 해주세요.<br> (gif,jpg,png 가능 / 용량:<?=number_format($config[cf_member_icon_size])?>바이트 이하만 등록됩니다.)</p>
<? if ($w == "u" && file_exists($mb_icon)) { ?>
<br /><img src="<?=$mb_icon?>" align="absmiddle" /> <input type="checkbox" name="del_mb_icon" value="1" />삭제
<? } ?>
</td>
</tr>
<? } ?>
<? if ($w == "" && $config[cf_use_recommend]) { ?>
<tr>
<th>추천인아이디</th>
<td><input type="text" name="mb_recommend" class="ed" /></td>
</tr>
<? } ?>
<tr>
<th>자동등록방지</th>
<td>
<div style="float:left; margin:0; margin-right:10px;"><img id="kcaptcha_image" /></div>
<input type="input" class="ed" size="10" name="wr_key" itemname="자동등록방지" required />
<p class="desc">광고, 스팸성 아이디 가입을 방지하기 위한 절차입니다.<br />좌측 이미지의 내용을 입력해주세요.</p>
</td>
</tr>
</tbody>
</table>
<div class="register_submit">
<input type="submit" class="submit" value="회원가입 완료하기" />
</div>
</form>
</div>
<script type="text/javascript" src="<?="$g4[path]/js/jquery.kcaptcha.js"?>"></script>
<script type="text/javascript">
$(function() {
// 폼의 첫번째 입력박스에 포커스 주기
$("#fregisterform :input[type="text"]:visible:enabled:first").focus();
});
// submit 최종 폼체크
function fregisterform_submit(f)
{
// 회원아이디 검사
if (f.w.value == "") {
reg_mb_id_check();
if (document.getElementById('mb_id_enabled').value!='000') {
alert('회원아이디를 입력하지 않았거나 입력에 오류가 있습니다.');
document.getElementById('reg_mb_id').select();
return false;
}
}
if (f.w.value == '') {
if (f.mb_password.value.length < 3) {
alert('패스워드를 3글자 이상 입력하십시오.');
f.mb_password.focus();
return false;
}
}
if (f.mb_password.value != f.mb_password_re.value) {
alert('패스워드가 같지 않습니다.');
f.mb_password_re.focus();
return false;
}
if (f.mb_password.value.length > 0) {
if (f.mb_password_re.value.length < 3) {
alert('패스워드를 3글자 이상 입력하십시오.');
f.mb_password_re.focus();
return false;
}
}
// 이름 검사
if (f.w.value=='') {
if (f.mb_name.value.length < 1) {
alert('이름을 입력하십시오.');
f.mb_name.focus();
return false;
}
var pattern = /([^가-힣\x20])/i;
if (pattern.test(f.mb_name.value)) {
alert('이름은 한글로 입력하십시오.');
f.mb_name.focus();
return false;
}
}
// 별명 검사
if ((f.w.value == "") ||
(f.w.value == "u" && f.mb_nick.defaultValue != f.mb_nick.value)) {
reg_mb_nick_check();
if (document.getElementById('mb_nick_enabled').value!='000') {
alert('별명을 입력하지 않았거나 입력에 오류가 있습니다.');
document.getElementById('reg_mb_nick').select();
return false;
}
}
// E-mail 검사
if ((f.w.value == "") ||
(f.w.value == "u" && f.mb_email.defaultValue != f.mb_email.value)) {
reg_mb_email_check();
if (document.getElementById('mb_email_enabled').value!='000') {
alert('E-mail을 입력하지 않았거나 입력에 오류가 있습니다.');
document.getElementById('reg_mb_email').select();
return false;
}
// 사용할 수 없는 E-mail 도메인
var domain = prohibit_email_check(f.mb_email.value);
if (domain) {
alert("'"+domain+"'은(는) 사용하실 수 없는 메일입니다.");
document.getElementById('reg_mb_email').focus();
return false;
}
}
if (typeof(f.mb_birth) != 'undefined') {
if (f.mb_birth.value.length < 1) {
alert('달력 버튼을 클릭하여 생일을 입력하여 주십시오.');
//f.mb_birth.focus();
return false;
}
var todays = <?=date("Ymd", $g4['server_time']);?>;
// 오늘날짜에서 생일을 빼고 거기서 140000 을 뺀다.
// 결과가 0 이상의 양수이면 만 14세가 지난것임
var n = todays - parseInt(f.mb_birth.value) - 140000;
if (n < 0) {
alert("만 14세가 지나지 않은 어린이는 정보통신망 이용촉진 및 정보보호 등에 관한 법률\n\n제 31조 1항의 규정에 의하여 법정대리인의 동의를 얻어야 하므로\n\n법정대리인의 이름과 연락처를 '자기소개'란에 별도로 입력하시기 바랍니다.");
return false;
}
}
if (typeof(f.mb_sex) != 'undefined') {
if (f.mb_sex.value == '') {
alert('성별을 선택하여 주십시오.');
f.mb_sex.focus();
return false;
}
}
if (typeof f.mb_icon != 'undefined') {
if (f.mb_icon.value) {
if (!f.mb_icon.value.toLowerCase().match(/.(gif|jpg|jpeg|png)$/i)) {
alert('회원아이콘이 gif, jpg, png 파일이 아닙니다.');
f.mb_icon.focus();
return false;
}
}
}
if (typeof(f.mb_recommend) != 'undefined') {
if (f.mb_id.value == f.mb_recommend.value) {
alert('본인을 추천할 수 없습니다.');
f.mb_recommend.focus();
return false;
}
}
if (!check_kcaptcha(f.wr_key)) {
return false;
}
// 보안인증관련 코드로 반드시 포함되어야 합니다.
set_cookie("<?=md5($token)?>", "<?=base64_encode($token)?>", 1, "<?=$g4['cookie_domain']?>");
return true;
}
// 금지 메일 도메인 검사
function prohibit_email_check(email)
{
email = email.toLowerCase();
var prohibit_email = "<?=trim(strtolower(preg_replace("/(\r\n|\r|\n)/", ",", $config[cf_prohibit_email])));?>";
var s = prohibit_email.split(",");
var tmp = email.split("@");
var domain = tmp[tmp.length - 1]; // 메일 도메인만 얻는다
for (i=0; i<s.length; i++) {
if (s[i] == domain)
return domain;
}
return "";
}
</script>
**********************************
정말 염치없는 .. 힘든 질문이지만 ..
없는 지식을 짜보고 짜봐도 해결되지 않아 이렇게 질문을 하게되었습니다 !..
힌트라도 좋으니 .. 어떤 답변이라도 부탁을 드립니다 ㅠ_ㅠ !!
댓글 전체
페이지에 자바스크립트 오류가 있는지 확인해보세요
감사합니다 !
익스플로어, 크롬에 있는 개발자 모드를 이용해 체크하니 자바스크립트 오류가 있더군요 ..
정말 감사합니다 ^^
익스플로어, 크롬에 있는 개발자 모드를 이용해 체크하니 자바스크립트 오류가 있더군요 ..
정말 감사합니다 ^^