Merge branch 'master' of github.com:gnuboard/g4s
This commit is contained in:
@ -1,5 +1,6 @@
|
||||
<?
|
||||
include_once('./_common.php');
|
||||
include_once($g4['path'].'/lib/register.lib.php');
|
||||
if ($captcha->lib) include_once($captcha->lib);
|
||||
|
||||
// 불법접근을 막도록 토큰생성
|
||||
@ -112,6 +113,11 @@ else
|
||||
|
||||
$req_nick = !isset($member['mb_nick_date']) || (isset($member['mb_nick_date']) && $member['mb_nick_date'] <= date("Y-m-d", $g4['server_time'] - ($config['cf_nick_modify'] * 86400)));
|
||||
|
||||
$required = "";
|
||||
$readonly = "";
|
||||
if ($w == '') $required = "required";
|
||||
else if ($w == 'u') $readonly = "readonly";
|
||||
|
||||
include_once($member_skin_path.'/register_form.skin.php');
|
||||
include_once('./_tail.php');
|
||||
?>
|
||||
@ -1,5 +1,6 @@
|
||||
<?
|
||||
include_once('./_common.php');
|
||||
include_once($g4['path'].'/lib/register.lib.php');
|
||||
include_once($g4['path'].'/lib/mailer.lib.php');
|
||||
include_once($g4['path'].'/plugin/captcha/captcha.lib.php');
|
||||
|
||||
@ -16,108 +17,94 @@ if ($w == 'u' && $is_admin == 'super') {
|
||||
}
|
||||
|
||||
if (!chk_captcha("wr_key")) {
|
||||
alert("자동등록방지 코드에 오류가 있습니다.");
|
||||
alert("자동등록방지 입력에 오류가 있습니다.");
|
||||
}
|
||||
|
||||
$mb_id = trim(strip_tags(mysql_escape_string($_POST[mb_id])));
|
||||
$mb_password = trim(mysql_escape_string($_POST[mb_password]));
|
||||
$mb_name = trim(strip_tags(mysql_escape_string($_POST[mb_name])));
|
||||
$mb_nick = trim(strip_tags(mysql_escape_string($_POST[mb_nick])));
|
||||
$mb_email = trim(strip_tags(mysql_escape_string($_POST[mb_email])));
|
||||
$mb_homepage = trim(strip_tags(mysql_escape_string($_POST[mb_homepage])));
|
||||
$mb_id = escape_trim($_POST['mb_id']);
|
||||
$mb_password = escape_trim($_POST['mb_password']);
|
||||
$mb_name = escape_trim($_POST['mb_name']);
|
||||
$mb_nick = escape_trim($_POST['mb_nick']);
|
||||
$mb_email = escape_trim($_POST['mb_email']);
|
||||
$mb_sex = isset($_POST['mb_sex']) ? escape_trim($_POST['mb_sex']) : "";
|
||||
$mb_birth = isset($_POST['mb_birth']) ? escape_trim($_POST['mb_birth']) : "";
|
||||
$mb_homepage = isset($_POST['mb_homepage']) ? escape_trim($_POST['mb_homepage']) : "";
|
||||
$mb_tel = isset($_POST['mb_tel']) ? escape_trim($_POST['mb_tel']) : "";
|
||||
$mb_hp = isset($_POST['mb_hp']) ? escape_trim($_POST['mb_hp']) : "";
|
||||
$mb_zip1 = isset($_POST['mb_zip1']) ? escape_trim($_POST['mb_zip1']) : "";
|
||||
$mb_zip2 = isset($_POST['mb_zip2']) ? escape_trim($_POST['mb_zip2']) : "";
|
||||
$mb_addr1 = isset($_POST['mb_addr1']) ? escape_trim($_POST['mb_addr1']) : "";
|
||||
$mb_addr2 = isset($_POST['mb_addr2']) ? escape_trim($_POST['mb_addr2']) : "";
|
||||
$mb_signature = isset($_POST['mb_signature']) ? escape_trim($_POST['mb_signature']) : "";
|
||||
$mb_profile = isset($_POST['mb_profile']) ? escape_trim($_POST['mb_profile']) : "";
|
||||
$mb_recommend = isset($_POST['mb_recommend']) ? escape_trim($_POST['mb_recommend']) : "";
|
||||
$mb_mailling = isset($_POST['mb_mailling']) ? escape_trim($_POST['mb_mailling']) : "";
|
||||
$mb_sms = isset($_POST['mb_sms']) ? escape_trim($_POST['mb_sms']) : "";
|
||||
$mb_1 = isset($_POST['mb_1']) ? escape_trim($_POST['mb_1']) : "";
|
||||
$mb_2 = isset($_POST['mb_2']) ? escape_trim($_POST['mb_2']) : "";
|
||||
$mb_3 = isset($_POST['mb_3']) ? escape_trim($_POST['mb_3']) : "";
|
||||
$mb_4 = isset($_POST['mb_4']) ? escape_trim($_POST['mb_4']) : "";
|
||||
$mb_5 = isset($_POST['mb_5']) ? escape_trim($_POST['mb_5']) : "";
|
||||
$mb_6 = isset($_POST['mb_6']) ? escape_trim($_POST['mb_6']) : "";
|
||||
$mb_7 = isset($_POST['mb_7']) ? escape_trim($_POST['mb_7']) : "";
|
||||
$mb_8 = isset($_POST['mb_8']) ? escape_trim($_POST['mb_8']) : "";
|
||||
$mb_9 = isset($_POST['mb_9']) ? escape_trim($_POST['mb_9']) : "";
|
||||
$mb_10 = isset($_POST['mb_10']) ? escape_trim($_POST['mb_10']) : "";
|
||||
|
||||
if ($w == '' || $w == 'u')
|
||||
{
|
||||
if (!$mb_id) alert('회원아이디가 넘어오지 않았습니다.');
|
||||
if ($w == '' && !$mb_password) alert('패스워드가 넘어오지 않았습니다.');
|
||||
if (!$mb_name) alert('이름(실명)이 넘어오지 않았습니다.');
|
||||
if (!$mb_nick) alert('별명이 넘어오지 않았습니다.');
|
||||
if (!$mb_email) alert('E-mail 이 넘어오지 않았습니다.');
|
||||
if ($w == '' || $w == 'u') {
|
||||
|
||||
if (preg_match("/[\,]?{$mb_id}/i", $config[cf_prohibit_id]))
|
||||
alert(''.$mb_id.' 은(는) 예약어로 사용하실 수 없는 회원아이디입니다.');
|
||||
if ($msg = empty_mb_id($mb_id)) alert($msg);
|
||||
|
||||
if (preg_match("/[\,]?{$mb_nick}/i", $config[cf_prohibit_id]))
|
||||
alert(''.$mb_nick.' 은(는) 예약어로 사용하실 수 없는 별명입니다.');
|
||||
if ($w == '' && !$mb_password)
|
||||
alert('패스워드가 넘어오지 않았습니다.');
|
||||
|
||||
// 이름은 한글만 가능
|
||||
if (!check_string($mb_name, _G4_HANGUL_))
|
||||
alert('이름은 공백없이 한글만 입력 가능합니다.');
|
||||
if ($msg = empty_mb_name($mb_id)) alert($msg);
|
||||
if ($msg = empty_mb_nick($mb_nick)) alert($msg);
|
||||
if ($msg = empty_mb_email($mb_email)) alert($msg);
|
||||
if ($msg = reserve_mb_id($mb_id)) alert($msg);
|
||||
if ($msg = reserve_mb_nick($mb_nick)) alert($msg);
|
||||
if ($msg = valid_mb_name($mb_name)) alert($msg);
|
||||
if ($msg = valid_mb_nick($mb_nick)) alert($msg);
|
||||
|
||||
// 별명은 한글, 영문, 숫자만 가능
|
||||
if (!check_string($mb_nick, _G4_HANGUL_ + _G4_ALPHABETIC_ + _G4_NUMERIC_))
|
||||
alert('별명은 공백없이 한글, 영문, 숫자만 입력 가능합니다.');
|
||||
if ($w=='') {
|
||||
if ($msg = exist_mb_id($mb_id)) alert($msg);
|
||||
|
||||
if ($w=='')
|
||||
{
|
||||
if (strtolower($mb_id) == strtolower($mb_recommend)) alert('본인을 추천할 수 없습니다.');
|
||||
|
||||
$sql = " select count(*) as cnt from {$g4[member_table]} where mb_nick = '{$mb_nick}' ";
|
||||
$row = sql_fetch($sql);
|
||||
if ($row[cnt])
|
||||
alert(''.$mb_nick.' 은(는) 이미 다른분이 사용중인 별명이므로 사용이 불가합니다.');
|
||||
|
||||
$sql = " select count(*) as cnt from {$g4[member_table]} where mb_email = '{$mb_email}' ";
|
||||
$row = sql_fetch($sql);
|
||||
if ($row[cnt])
|
||||
alert(''.$mb_email.' 은(는) 이미 다른분이 사용중인 E-mail이므로 사용이 불가합니다.');
|
||||
|
||||
// 주민번호 확인 체크시 가입하고 바로 뒤로가기 하면 동일 주민번호로 다시 가입되는 버그 때문에 (letsgolee 님 09.06.16)
|
||||
if ($config[cf_use_jumin]) {
|
||||
$row = sql_fetch(" select mb_name from {$g4[member_table]} where mb_jumin = '{$mb_jumin}' ");
|
||||
if ($row[mb_name]) {
|
||||
if ($row[mb_name] == $mb_name)
|
||||
alert('이미 가입되어 있습니다.');
|
||||
else
|
||||
alert('다른 이름으로 같은 주민등록번호가 이미 가입되어 있습니다.'.PHP_EOL.PHP_EOL.'관리자에게 문의해 주십시오.');
|
||||
}
|
||||
if (strtolower($mb_id) == strtolower($mb_recommend)) {
|
||||
alert('본인을 추천할 수 없습니다.');
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
} else {
|
||||
// 자바스크립트로 정보변경이 가능한 버그 수정
|
||||
// 별명수정일이 지나지 않았다면
|
||||
if ($member[mb_nick_date] > date("Y-m-d", $g4[server_time] - ($config[cf_nick_modify] * 86400)))
|
||||
$mb_nick = $member[mb_nick];
|
||||
if ($member['mb_nick_date'] > date("Y-m-d", $g4['server_time'] - ($config['cf_nick_modify'] * 86400)))
|
||||
$mb_nick = $member['mb_nick'];
|
||||
// 회원정보의 메일을 이전 메일로 옮기고 아래에서 비교함
|
||||
$old_email = $member[mb_email];
|
||||
|
||||
$sql = " select count(*) as cnt from {$g4[member_table]} where mb_nick = '{$mb_nick}' and mb_id <> '{$mb_id}' ";
|
||||
$row = sql_fetch($sql);
|
||||
if ($row[cnt])
|
||||
alert(''.$mb_nick.' 은(는) 이미 다른분이 사용중인 별명이므로 사용이 불가합니다.');
|
||||
|
||||
$sql = " select count(*) as cnt from {$g4[member_table]} where mb_email = '{$mb_email}' and mb_id <> '{$mb_id}' ";
|
||||
$row = sql_fetch($sql);
|
||||
if ($row[cnt])
|
||||
alert(''.$mb_email.' 은(는) 이미 다른분이 사용중인 E-mail이므로 사용이 불가합니다.');
|
||||
$old_email = $member['mb_email'];
|
||||
}
|
||||
|
||||
if ($msg = exist_mb_nick($mb_nick, $mb_id)) alert($msg);
|
||||
if ($msg = exist_mb_email($mb_email, $mb_id)) alert($msg);
|
||||
}
|
||||
|
||||
$mb_dir = $g4['path'].'/data/member/'.substr($mb_id,0,2);
|
||||
|
||||
// 아이콘 삭제
|
||||
if ($del_mb_icon)
|
||||
if (isset($_POST['del_mb_icon'])) {
|
||||
@unlink($mb_dir.'/'.$mb_id.'.gif');
|
||||
}
|
||||
|
||||
$msg = "";
|
||||
|
||||
// 아이콘 업로드
|
||||
$mb_icon = '';
|
||||
if (is_uploaded_file($_FILES[mb_icon][tmp_name]))
|
||||
{
|
||||
if (preg_match("/(\.gif)$/i", $_FILES[mb_icon][name]))
|
||||
{
|
||||
if (isset($_FILES['mb_icon']) && is_uploaded_file($_FILES['mb_icon']['tmp_name'])) {
|
||||
if (preg_match("/(\.gif)$/i", $_FILES['mb_icon']['name'])) {
|
||||
// 아이콘 용량이 설정값보다 이하만 업로드 가능
|
||||
if ($_FILES[mb_icon][size] <= $config[cf_member_icon_size])
|
||||
{
|
||||
if ($_FILES['mb_icon']['size'] <= $config['cf_member_icon_size']) {
|
||||
@mkdir($mb_dir, 0707);
|
||||
@chmod($mb_dir, 0707);
|
||||
$dest_path = $mb_dir.'/'.$mb_id.'.gif';
|
||||
move_uploaded_file($_FILES[mb_icon][tmp_name], $dest_path);
|
||||
move_uploaded_file($_FILES['mb_icon']['tmp_name'], $dest_path);
|
||||
chmod($dest_path, 0606);
|
||||
if (file_exists($dest_path))
|
||||
{
|
||||
if (file_exists($dest_path)) {
|
||||
//=================================================================\
|
||||
// 090714
|
||||
// gif 파일에 악성코드를 심어 업로드 하는 경우를 방지
|
||||
@ -128,14 +115,15 @@ if (is_uploaded_file($_FILES[mb_icon][tmp_name]))
|
||||
@unlink($dest_path);
|
||||
else
|
||||
// 아이콘의 폭 또는 높이가 설정값 보다 크다면 이미 업로드 된 아이콘 삭제
|
||||
if ($size[0] > $config[cf_member_icon_width] || $size[1] > $config[cf_member_icon_height])
|
||||
if ($size[0] > $config['cf_member_icon_width'] || $size[1] > $config['cf_member_icon_height'])
|
||||
@unlink($dest_path);
|
||||
//=================================================================\
|
||||
}
|
||||
}
|
||||
|
||||
} else {
|
||||
$msg .= $_FILES['mb_icon']['name'].'은(는) gif 파일이 아닙니다.';
|
||||
}
|
||||
else
|
||||
$msg .= $_FILES[mb_icon][name].'은(는) gif 파일이 아닙니다.';
|
||||
}
|
||||
|
||||
|
||||
@ -143,23 +131,16 @@ if (is_uploaded_file($_FILES[mb_icon][tmp_name]))
|
||||
$admin = get_admin('super');
|
||||
|
||||
|
||||
if ($w == '')
|
||||
{
|
||||
$mb = get_member($mb_id);
|
||||
if ($mb[mb_id])
|
||||
alert('이미 가입한 아이디입니다.');
|
||||
if ($w == '') {
|
||||
|
||||
$sql = " insert into {$g4[member_table]}
|
||||
$sql = " insert into {$g4['member_table']}
|
||||
set mb_id = '{$mb_id}',
|
||||
mb_password = '".sql_password($mb_password)."',
|
||||
mb_name = '{$mb_name}',
|
||||
mb_jumin = '{$mb_jumin}',
|
||||
mb_sex = '{$mb_sex}',
|
||||
mb_birth = '{$mb_birth}',
|
||||
mb_nick = '{$mb_nick}',
|
||||
mb_nick_date = '{$g4[time_ymd]}',
|
||||
mb_password_q = '{$mb_password_q}',
|
||||
mb_password_a = '{$mb_password_a}',
|
||||
mb_nick_date = '{$g4['time_ymd']}',
|
||||
mb_email = '{$mb_email}',
|
||||
mb_homepage = '{$mb_homepage}',
|
||||
mb_tel = '{$mb_tel}',
|
||||
@ -170,16 +151,16 @@ if ($w == '')
|
||||
mb_addr2 = '{$mb_addr2}',
|
||||
mb_signature = '{$mb_signature}',
|
||||
mb_profile = '{$mb_profile}',
|
||||
mb_today_login = '{$g4[time_ymdhis]}',
|
||||
mb_datetime = '{$g4[time_ymdhis]}',
|
||||
mb_ip = '{$_SERVER[REMOTE_ADDR]}',
|
||||
mb_level = '{$config[cf_register_level]}',
|
||||
mb_today_login = '{$g4['time_ymdhis']}',
|
||||
mb_datetime = '{$g4['time_ymdhis']}',
|
||||
mb_ip = '{$_SERVER['REMOTE_ADDR']}',
|
||||
mb_level = '{$config['cf_register_level']}',
|
||||
mb_recommend = '{$mb_recommend}',
|
||||
mb_login_ip = '{$_SERVER[REMOTE_ADDR]}',
|
||||
mb_login_ip = '{$_SERVER['REMOTE_ADDR']}',
|
||||
mb_mailling = '{$mb_mailling}',
|
||||
mb_sms = '{$mb_sms}',
|
||||
mb_open = '{$mb_open}',
|
||||
mb_open_date = '{$g4[time_ymd]}',
|
||||
mb_open_date = '{$g4['time_ymd']}',
|
||||
mb_1 = '{$mb_1}',
|
||||
mb_2 = '{$mb_2}',
|
||||
mb_3 = '{$mb_3}',
|
||||
@ -191,36 +172,34 @@ if ($w == '')
|
||||
mb_9 = '{$mb_9}',
|
||||
mb_10 = '{$mb_10}' ";
|
||||
// 이메일 인증을 사용하지 않는다면 이메일 인증시간을 바로 넣는다
|
||||
if (!$config[cf_use_email_certify])
|
||||
if (!$config['cf_use_email_certify'])
|
||||
$sql .= " , mb_email_certify = '{$g4[time_ymdhis]}' ";
|
||||
sql_query($sql);
|
||||
|
||||
// 회원가입 포인트 부여
|
||||
insert_point($mb_id, $config[cf_register_point], '회원가입 축하', '{@member}', $mb_id, '회원가입');
|
||||
insert_point($mb_id, $config['cf_register_point'], '회원가입 축하', '{@member}', $mb_id, '회원가입');
|
||||
|
||||
// 추천인에게 포인트 부여
|
||||
if ($config[cf_use_recommend] && $mb_recommend)
|
||||
insert_point($mb_recommend, $config[cf_recommend_point], '{$mb_id}의 추천인', '{@member}', $mb_recommend, '{$mb_id} 추천');
|
||||
if ($config['cf_use_recommend'] && $mb_recommend)
|
||||
insert_point($mb_recommend, $config['cf_recommend_point'], '{$mb_id}의 추천인', '{@member}', $mb_recommend, '{$mb_id} 추천');
|
||||
|
||||
// 회원님께 메일 발송
|
||||
if ($config[cf_email_mb_member])
|
||||
{
|
||||
if ($config['cf_email_mb_member']) {
|
||||
$subject = '회원가입을 축하드립니다.';
|
||||
|
||||
$mb_md5 = md5($mb_id.$mb_email.$g4[time_ymdhis]);
|
||||
$certify_href = $g4[url].'/'.$g4[bbs].'/email_certify.php?mb_id='.$mb_id.'&mb_md5='.$mb_md5;
|
||||
$mb_md5 = md5($mb_id.$mb_email.$g4['time_ymdhis']);
|
||||
$certify_href = $g4['url'].'/'.$g4['bbs'].'/email_certify.php?mb_id='.$mb_id.'&mb_md5='.$mb_md5;
|
||||
|
||||
ob_start();
|
||||
include_once ('./register_form_update_mail1.php');
|
||||
$content = ob_get_contents();
|
||||
ob_end_clean();
|
||||
|
||||
mailer($admin[mb_nick], $admin[mb_email], $mb_email, $subject, $content, 1);
|
||||
mailer($admin['mb_nick'], $admin['mb_email'], $mb_email, $subject, $content, 1);
|
||||
}
|
||||
|
||||
// 최고관리자님께 메일 발송
|
||||
if ($config[cf_email_mb_super_admin])
|
||||
{
|
||||
if ($config['cf_email_mb_super_admin']) {
|
||||
$subject = $mb_nick .' 님께서 회원으로 가입하셨습니다.';
|
||||
|
||||
ob_start();
|
||||
@ -228,22 +207,22 @@ if ($w == '')
|
||||
$content = ob_get_contents();
|
||||
ob_end_clean();
|
||||
|
||||
mailer($mb_nick, $mb_email, $admin[mb_email], $subject, $content, 1);
|
||||
mailer($mb_nick, $mb_email, $admin['mb_email'], $subject, $content, 1);
|
||||
}
|
||||
|
||||
// 메일인증 사용하지 않는 경우에만 로그인
|
||||
if (!$config[cf_use_email_certify])
|
||||
if (!$config['cf_use_email_certify'])
|
||||
set_session('ss_mb_id', $mb_id);
|
||||
|
||||
set_session('ss_mb_reg', $mb_id);
|
||||
}
|
||||
else if ($w == 'u')
|
||||
{
|
||||
if (!trim($_SESSION["ss_mb_id"]))
|
||||
|
||||
} else if ($w == 'u') {
|
||||
|
||||
if (!trim($_SESSION['ss_mb_id']))
|
||||
alert('로그인 되어 있지 않습니다.');
|
||||
|
||||
if ($_SESSION["ss_mb_id"] != $_POST[mb_id])
|
||||
alert('로그인된 정보와 수정하려는 정보가 틀리므로 수정할 수 없습니다.'.PHP_EOL.PHP_EOL.'만약 올바르지 않은 방법을 사용하신다면 바로 중지하여 주십시오.');
|
||||
if ($_SESSION['ss_mb_id'] != $mb_id)
|
||||
alert("로그인된 정보와 수정하려는 정보가 틀리므로 수정할 수 없습니다.\\n만약 올바르지 않은 방법을 사용하신다면 바로 중지하여 주십시오.");
|
||||
|
||||
$sql_password = "";
|
||||
if ($mb_password)
|
||||
@ -267,60 +246,57 @@ else if ($w == 'u')
|
||||
|
||||
// 이전 메일주소와 수정한 메일주소가 틀리다면 인증을 다시 해야하므로 값을 삭제
|
||||
$sql_email_certify = '';
|
||||
if ($old_email != $mb_email && $config[cf_use_email_certify])
|
||||
if ($old_email != $mb_email && $config['cf_use_email_certify'])
|
||||
$sql_email_certify = " , mb_email_certify = '' ";
|
||||
|
||||
// set mb_name = '$mb_name', 제거
|
||||
$sql = " update {$g4[member_table]}
|
||||
$sql = " update {$g4['member_table']}
|
||||
set mb_nick = '{$mb_nick}',
|
||||
mb_password_q = '{$mb_password_q}',
|
||||
mb_password_a = '{$mb_password_a}',
|
||||
mb_mailling = '{$mb_mailling}',
|
||||
mb_sms = '{$mb_sms}',
|
||||
mb_open = '{$mb_open}',
|
||||
mb_email = '{$mb_email}',
|
||||
mb_homepage = '{$mb_homepage}',
|
||||
mb_tel = '{$mb_tel}',
|
||||
mb_hp = '{$mb_hp}',
|
||||
mb_zip1 = '{$mb_zip1}',
|
||||
mb_zip2 = '{$mb_zip2}',
|
||||
mb_addr1 = '{$mb_addr1}',
|
||||
mb_addr2 = '{$mb_addr2}',
|
||||
mb_signature = '{$mb_signature}',
|
||||
mb_profile = '{$mb_profile}',
|
||||
mb_1 = '{$mb_1}',
|
||||
mb_2 = '{$mb_2}',
|
||||
mb_3 = '{$mb_3}',
|
||||
mb_4 = '{$mb_4}',
|
||||
mb_5 = '{$mb_5}',
|
||||
mb_6 = '{$mb_6}',
|
||||
mb_7 = '{$mb_7}',
|
||||
mb_8 = '{$mb_8}',
|
||||
mb_9 = '{$mb_9}',
|
||||
mb_10 = '{$mb_10}'
|
||||
{$sql_password}
|
||||
{$sql_icon}
|
||||
{$sql_nick_date}
|
||||
{$sql_open_date}
|
||||
{$sql_sex}
|
||||
{$sql_email_certify}
|
||||
where mb_id = '{$_POST[mb_id]}' ";
|
||||
mb_mailling = '{$mb_mailling}',
|
||||
mb_sms = '{$mb_sms}',
|
||||
mb_open = '{$mb_open}',
|
||||
mb_email = '{$mb_email}',
|
||||
mb_homepage = '{$mb_homepage}',
|
||||
mb_tel = '{$mb_tel}',
|
||||
mb_hp = '{$mb_hp}',
|
||||
mb_zip1 = '{$mb_zip1}',
|
||||
mb_zip2 = '{$mb_zip2}',
|
||||
mb_addr1 = '{$mb_addr1}',
|
||||
mb_addr2 = '{$mb_addr2}',
|
||||
mb_signature = '{$mb_signature}',
|
||||
mb_profile = '{$mb_profile}',
|
||||
mb_1 = '{$mb_1}',
|
||||
mb_2 = '{$mb_2}',
|
||||
mb_3 = '{$mb_3}',
|
||||
mb_4 = '{$mb_4}',
|
||||
mb_5 = '{$mb_5}',
|
||||
mb_6 = '{$mb_6}',
|
||||
mb_7 = '{$mb_7}',
|
||||
mb_8 = '{$mb_8}',
|
||||
mb_9 = '{$mb_9}',
|
||||
mb_10 = '{$mb_10}'
|
||||
{$sql_password}
|
||||
{$sql_icon}
|
||||
{$sql_nick_date}
|
||||
{$sql_open_date}
|
||||
{$sql_sex}
|
||||
{$sql_email_certify}
|
||||
where mb_id = '$mb_id' ";
|
||||
sql_query($sql);
|
||||
|
||||
// 인증메일 발송
|
||||
if ($old_email != $mb_email && $config[cf_use_email_certify])
|
||||
{
|
||||
if ($old_email != $mb_email && $config['cf_use_email_certify']) {
|
||||
$subject = '인증확인 메일입니다.';
|
||||
|
||||
$mb_md5 = md5($mb_id.$mb_email.$member[mb_datetime]);
|
||||
$certify_href = $g4[url].'/'.$g4[bbs].'/email_certify.php?mb_id='.$mb_id.'&mb_md5='.$mb_md5;
|
||||
$mb_md5 = md5($mb_id.$mb_email.$member['mb_datetime']);
|
||||
$certify_href = $g4['url'].'/'.$g4['bbs'].'/email_certify.php?mb_id='.$mb_id.'&mb_md5='.$mb_md5;
|
||||
|
||||
ob_start();
|
||||
include_once ('./register_form_update_mail3.php');
|
||||
$content = ob_get_contents();
|
||||
ob_end_clean();
|
||||
|
||||
mailer($admin[mb_nick], $admin[mb_email], $mb_email, $subject, $content, 1);
|
||||
mailer($admin['mb_nick'], $admin['mb_email'], $mb_email, $subject, $content, 1);
|
||||
}
|
||||
}
|
||||
|
||||
@ -332,23 +308,15 @@ else if ($w == 'u')
|
||||
if ($msg)
|
||||
echo '<script>alert(\''.$msg.'\');</script>';
|
||||
|
||||
/*
|
||||
// 결과페이지는 https 에서 http 로 변경이 되어야 함
|
||||
if ($g4[https_url])
|
||||
$https_url = $g4[https_url].'/'.$g4[bbs];
|
||||
else
|
||||
$https_url = '.';
|
||||
*/
|
||||
|
||||
$https_url = $g4[url].'/'.$g4[bbs];
|
||||
$https_url = $g4['url'].'/'.$g4['bbs'];
|
||||
|
||||
if ($w == "") {
|
||||
goto_url($https_url.'/register_result.php');
|
||||
} else if ($w == 'u') {
|
||||
$row = sql_fetch(" select mb_password from {$g4[member_table]} where mb_id = '{$member[mb_id]}' ");
|
||||
$row = sql_fetch(" select mb_password from {$g4['member_table']} where mb_id = '{$member[mb_id]}' ");
|
||||
$tmp_password = $row['mb_password'];
|
||||
|
||||
if ($old_email != $mb_email && $config[cf_use_email_certify]) {
|
||||
if ($old_email != $mb_email && $config['cf_use_email_certify']) {
|
||||
set_session("ss_mb_id", "");
|
||||
alert('회원 정보가 수정 되었습니다.\n\nE-mail 주소가 변경되었으므로 다시 인증하셔야 합니다.', $g4['path']);
|
||||
} else {
|
||||
@ -361,7 +329,7 @@ if ($w == "") {
|
||||
<input type="hidden" name="is_update" value="1">
|
||||
</form>
|
||||
<script>
|
||||
alert(\'회원 정보가 수정 되었습니다.\');
|
||||
alert("회원 정보가 수정 되었습니다.");
|
||||
document.fregisterupdate.submit();
|
||||
</script>
|
||||
</body>
|
||||
|
||||
@ -29,7 +29,7 @@ if (strstr($lo_url, "/$g4[admin]/") || $is_admin == 'super') $lo_url = '';
|
||||
|
||||
// 자바스크립트에서 go(-1) 함수를 쓰면 폼값이 사라질때 해당 폼의 상단에 사용하면
|
||||
// 캐쉬의 내용을 가져옴. 완전한지는 검증되지 않음
|
||||
header("Content-Type: text/html; charset=$g4[charset]");
|
||||
header("Content-Type: text/html; charset={$g4['charset']}");
|
||||
$gmnow = gmdate("D, d M Y H:i:s") . " GMT";
|
||||
header("Expires: 0"); // rfc2616 - Section 14.21
|
||||
header("Last-Modified: " . $gmnow);
|
||||
|
||||
@ -1562,69 +1562,9 @@ function convert_charset($from_charset, $to_charset, $str)
|
||||
}
|
||||
|
||||
|
||||
// 회원가입시 회원아이디 오류 검사
|
||||
function check_mb_id($reg_mb_id, $length=3)
|
||||
// mysql_real_escape_string 의 alias 기능을 한다.
|
||||
function escape_trim($field)
|
||||
{
|
||||
global $config, $g4;
|
||||
|
||||
if (!isset($reg_mb_id) || !$reg_mb_id)
|
||||
return "회원아이디를 입력해 주십시오.";
|
||||
|
||||
if (preg_match("/[^0-9a-z_]+/i", $reg_mb_id)) {
|
||||
return "회원아이디는 영문자, 숫자, _ 만 입력하세요."; // 유효하지 않은 회원아이디
|
||||
} else if (strlen($reg_mb_id) < $length) {
|
||||
return "회원아이디는 최소 {$length}글자 이상 입력하세요.";
|
||||
} else {
|
||||
$row = sql_fetch(" select count(*) as cnt from {$g4['member_table']} where mb_id = '$reg_mb_id' ");
|
||||
if ($row['cnt']) {
|
||||
return "이미 사용중인 회원아이디 입니다."; // 이미 존재하는 회원아이디
|
||||
} else {
|
||||
if (preg_match("/[\,]?{$reg_mb_id}/i", $config['cf_prohibit_id'])) {
|
||||
return "이미 예약된 단어로 사용할 수 없는 회원아이디 입니다."; // 예약어로 금지된 회원아이디
|
||||
}
|
||||
}
|
||||
}
|
||||
return ""; // 사용해도 좋은 회원아이디
|
||||
}
|
||||
|
||||
|
||||
function check_mb_nick($reg_mb_nick)
|
||||
{
|
||||
global $g4;
|
||||
|
||||
if (!isset($reg_mb_nick) || !$reg_mb_nick)
|
||||
return "별명을 입력해 주십시오.";
|
||||
|
||||
// 별명은 한글, 영문, 숫자만 가능
|
||||
if (!check_string($reg_mb_nick, _G4_HANGUL_ + _G4_ALPHABETIC_ + _G4_NUMERIC_)) {
|
||||
return "별명은 공백없이 한글, 영문, 숫자만 입력 가능합니다.";
|
||||
} else if (strlen($reg_mb_nick) < 4) {
|
||||
return "별명은 한글 2글자, 영문 4글자 이상 입력 가능합니다.";
|
||||
} else {
|
||||
$row = sql_fetch(" select count(*) as cnt from {$g4['member_table']} where mb_nick = '$reg_mb_nick' ");
|
||||
if ($row['cnt']) {
|
||||
return "이미 존재하는 별명입니다.";
|
||||
}
|
||||
}
|
||||
return ""; // 사용해도 좋은 별명
|
||||
}
|
||||
|
||||
|
||||
function check_mb_email($reg_mb_id, $reg_mb_email)
|
||||
{
|
||||
global $g4;
|
||||
|
||||
if (!isset($reg_mb_email) || !$reg_mb_email)
|
||||
return "E-mail 주소를 입력해 주십시오.";
|
||||
|
||||
if (!preg_match("/([0-9a-zA-Z_-]+)@([0-9a-zA-Z_-]+)\.([0-9a-zA-Z_-]+)/", $reg_mb_email)) {
|
||||
return "E-mail 주소가 형식에 맞지 않습니다.";
|
||||
} else {
|
||||
$row = sql_fetch(" select count(*) as cnt from {$g4['member_table']} where mb_id <> '$reg_mb_id' and mb_email = '$reg_mb_email' ");
|
||||
if ($row['cnt']) {
|
||||
return "이미 사용중인 E-mail 주소입니다.";
|
||||
}
|
||||
}
|
||||
return "";
|
||||
return mysql_real_escape_string(htmlentities(trim($field)));
|
||||
}
|
||||
?>
|
||||
@ -9,7 +9,7 @@ function mailer($fname, $fmail, $to, $subject, $content, $type=0, $file='', $cc=
|
||||
global $g4;
|
||||
|
||||
// 메일발송 사용을 하지 않는다면
|
||||
if (!$config[cf_email_use]) return;
|
||||
if (!$config['cf_email_use']) return;
|
||||
|
||||
$fname = "=?$g4[charset]?B?" . base64_encode($fname) . "?=";
|
||||
$subject = "=?$g4[charset]?B?" . base64_encode($subject) . "?=";
|
||||
|
||||
200
lib/register.lib.php
Normal file
200
lib/register.lib.php
Normal file
@ -0,0 +1,200 @@
|
||||
<?
|
||||
if (!defined('_GNUBOARD_')) exit;
|
||||
|
||||
function empty_mb_id($reg_mb_id)
|
||||
{
|
||||
if (trim($reg_mb_id)=='')
|
||||
return "회원아이디를 입력해 주십시오.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function valid_mb_id($reg_mb_id)
|
||||
{
|
||||
if (preg_match("/[^0-9a-z_]+/i", $reg_mb_id))
|
||||
return "회원아이디는 영문자, 숫자, _ 만 입력하세요.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function count_mb_id($reg_mb_id)
|
||||
{
|
||||
if (strlen($reg_mb_id) < 3)
|
||||
return "회원아이디는 최소 3글자 이상 입력하세요.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function exist_mb_id($reg_mb_id)
|
||||
{
|
||||
global $g4;
|
||||
$sql = " select count(*) as cnt from `{$g4['member_table']}` where mb_id = '$reg_mb_id' ";
|
||||
$row = sql_fetch($sql);
|
||||
if ($row['cnt'])
|
||||
return "이미 사용중인 회원아이디 입니다.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function reserve_mb_id($reg_mb_id)
|
||||
{
|
||||
global $config;
|
||||
if (preg_match("/[\,]?{$reg_mb_id}/i", $config['cf_prohibit_id']))
|
||||
return "이미 예약된 단어로 사용할 수 없는 회원아이디 입니다.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function empty_mb_nick($reg_mb_nick)
|
||||
{
|
||||
if (!trim($reg_mb_nick))
|
||||
return "별명을 입력해 주십시오.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function valid_mb_nick($reg_mb_nick)
|
||||
{
|
||||
if (!check_string($reg_mb_nick, _G4_HANGUL_ + _G4_ALPHABETIC_ + _G4_NUMERIC_))
|
||||
return "별명은 공백없이 한글, 영문, 숫자만 입력 가능합니다.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function count_mb_nick($reg_mb_nick)
|
||||
{
|
||||
if (strlen($reg_mb_nick) < 4)
|
||||
return "별명은 한글 2글자, 영문 4글자 이상 입력 가능합니다.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function exist_mb_nick($reg_mb_nick, $reg_mb_id)
|
||||
{
|
||||
global $g4;
|
||||
$row = sql_fetch(" select count(*) as cnt from {$g4['member_table']} where mb_nick = '$reg_mb_nick' and mb_id <> '$reg_mb_id' ");
|
||||
if ($row['cnt'])
|
||||
return "이미 존재하는 별명입니다.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function reserve_mb_nick($reg_mb_nick)
|
||||
{
|
||||
global $config;
|
||||
if (preg_match("/[\,]?{$reg_mb_nick}/i", $config['cf_prohibit_id']))
|
||||
return "이미 예약된 단어로 사용할 수 없는 별명 입니다.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function empty_mb_email($reg_mb_email)
|
||||
{
|
||||
if (!trim($reg_mb_email))
|
||||
return "E-mail 주소를 입력해 주십시오.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function valid_mb_email($reg_mb_email)
|
||||
{
|
||||
if (!preg_match("/([0-9a-zA-Z_-]+)@([0-9a-zA-Z_-]+)\.([0-9a-zA-Z_-]+)/", $reg_mb_email))
|
||||
return "E-mail 주소가 형식에 맞지 않습니다.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function exist_mb_email($reg_mb_email, $reg_mb_id)
|
||||
{
|
||||
global $g4;
|
||||
$row = sql_fetch(" select count(*) as cnt from `{$g4['member_table']}` where mb_email = '$reg_mb_email' and mb_id <> '$reg_mb_id' ");
|
||||
if ($row['cnt'])
|
||||
return "이미 사용중인 E-mail 주소입니다.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function empty_mb_name($reg_mb_name)
|
||||
{
|
||||
if (!trim($reg_mb_name))
|
||||
return "이름을 입력해 주십시오.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function valid_mb_name($mb_name)
|
||||
{
|
||||
if (!check_string($mb_name, _G4_HANGUL_))
|
||||
return "이름은 공백없이 한글만 입력 가능합니다.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
return;
|
||||
?>
|
||||
|
||||
|
||||
// 회원가입시 회원아이디 오류 검사
|
||||
function check_mb_id($reg_mb_id, $length=3)
|
||||
{
|
||||
global $config, $g4;
|
||||
|
||||
if (!isset($reg_mb_id) || !$reg_mb_id)
|
||||
return "회원아이디를 입력해 주십시오.";
|
||||
|
||||
if (preg_match("/[^0-9a-z_]+/i", $reg_mb_id)) {
|
||||
return "회원아이디는 영문자, 숫자, _ 만 입력하세요."; // 유효하지 않은 회원아이디
|
||||
} else if (strlen($reg_mb_id) < $length) {
|
||||
return "회원아이디는 최소 {$length}글자 이상 입력하세요.";
|
||||
} else {
|
||||
$row = sql_fetch(" select count(*) as cnt from {$g4['member_table']} where mb_id = '$reg_mb_id' ");
|
||||
if ($row['cnt']) {
|
||||
return "이미 사용중인 회원아이디 입니다."; // 이미 존재하는 회원아이디
|
||||
} else {
|
||||
if (preg_match("/[\,]?{$reg_mb_id}/i", $config['cf_prohibit_id'])) {
|
||||
return "이미 예약된 단어로 사용할 수 없는 회원아이디 입니다."; // 예약어로 금지된 회원아이디
|
||||
}
|
||||
}
|
||||
}
|
||||
return ""; // 사용해도 좋은 회원아이디
|
||||
}
|
||||
|
||||
function check_mb_nick($reg_mb_nick, $reg_mb_id)
|
||||
{
|
||||
global $g4;
|
||||
|
||||
if (!isset($reg_mb_nick) || !$reg_mb_nick)
|
||||
return "별명을 입력해 주십시오.";
|
||||
|
||||
// 별명은 한글, 영문, 숫자만 가능
|
||||
if (!check_string($reg_mb_nick, _G4_HANGUL_ + _G4_ALPHABETIC_ + _G4_NUMERIC_)) {
|
||||
return "별명은 공백없이 한글, 영문, 숫자만 입력 가능합니다.";
|
||||
} else if (strlen($reg_mb_nick) < 4) {
|
||||
return "별명은 한글 2글자, 영문 4글자 이상 입력 가능합니다.";
|
||||
} else {
|
||||
$row = sql_fetch(" select count(*) as cnt from {$g4['member_table']} where mb_nick = '$reg_mb_nick' and mb_id <> '$reg_mb_id' ");
|
||||
if ($row['cnt']) {
|
||||
return "이미 존재하는 별명입니다.";
|
||||
}
|
||||
}
|
||||
return ""; // 사용해도 좋은 별명
|
||||
}
|
||||
|
||||
|
||||
function check_mb_email($reg_mb_email, $reg_mb_id)
|
||||
{
|
||||
global $g4;
|
||||
|
||||
if (!isset($reg_mb_email) || !$reg_mb_email)
|
||||
return "E-mail 주소를 입력해 주십시오.";
|
||||
|
||||
if (!preg_match("/([0-9a-zA-Z_-]+)@([0-9a-zA-Z_-]+)\.([0-9a-zA-Z_-]+)/", $reg_mb_email)) {
|
||||
return "E-mail 주소가 형식에 맞지 않습니다.";
|
||||
} else {
|
||||
$row = sql_fetch(" select count(*) as cnt from {$g4['member_table']} where mb_email = '$reg_mb_email' and mb_id <> '$reg_mb_id' ");
|
||||
if ($row['cnt']) {
|
||||
return "이미 사용중인 E-mail 주소입니다.";
|
||||
}
|
||||
}
|
||||
return "";
|
||||
}
|
||||
@ -30,7 +30,7 @@ $(function() {
|
||||
$("#captcha_key").focus();//이미지 새로고침 후 입력박스에 포커스 : 지운아빠 2012-07-13
|
||||
}
|
||||
})
|
||||
.css("cursor", "pointer");
|
||||
.css("cursor", "pointer")
|
||||
.trigger("click");
|
||||
|
||||
$("#captcha_wav").click(function(){
|
||||
|
||||
@ -145,16 +145,17 @@ function get_captcha($input_name, $captcha_no)
|
||||
set_session('ss_captcha_use', true);
|
||||
$captcha_class = str_pad($captcha_no,2,'0',STR_PAD_LEFT);// 캡챠 클래스를 선택할 수 있도록 지운아빠 2012-07-24
|
||||
|
||||
$s = "";
|
||||
$s .= "<fieldset id=\"captcha".$captcha_class."\">\n";
|
||||
$s .= "<legend>자동등록방지</legend>\n";
|
||||
$s .= "<img src=\"{$g4['path']}/plugin/captcha/img/dot.gif\" id=\"captcha\" alt=\"자동등록방지 이미지\" title=\"이미지를 클릭하시면 숫자가 바뀝니다.\"/>\n";
|
||||
$s .= "<a href=\"{$g4['path']}/plugin/captcha/wav.php\" id=\"captcha_wav\">wav</a>\n";
|
||||
$s .= "<label>자동등록방지 입력</label>\n";
|
||||
$s .= "<input type=\"text\" id=\"captcha_key\" name=\"$input_name\" class=\"captcha_box\" size=\"10\" maxlength=\"5\" required=\"required\" title=\"스팸방지\" title=\"이미지의 숫자를 순서대로 입력하세요.\" />\n";
|
||||
$s .= "<p>이미지의 숫자를 순서대로 입력하세요. 이미지를 클릭하시면 새로운 숫자가 나타납니다.</p>\n";
|
||||
$s .= "</fieldset>\n";
|
||||
return $s;
|
||||
$code = '<fieldset id="captcha'.$captcha_class.'">';
|
||||
$code .= '<legend>자동등록방지</legend>';
|
||||
//$code .= '<img src="" id="captcha" alt="자동등록방지 이미지" title="이미지를 클릭하시면 숫자가 바뀝니다.">';
|
||||
$code .= '<iframe id="captcha_iframe" name="captcha_iframe" src="'.$g4['path'].'/plugin/captcha/run.php" width="80" height="25" frameborder="0" scrolling="no"></iframe>';
|
||||
$code .= '<a href="'.$g4['path'].'/plugin/captcha/run.php" target="captcha_iframe">새로고침</a>';
|
||||
$code .= '<a href="'.$g4['path'].'/plugin/captcha/wav.php" id="captcha_wav">wav</a>';
|
||||
$code .= '<label>자동등록방지 입력</label>';
|
||||
$code .= '<input type="text" id="captcha_key" name="'.$input_name.'" class="captcha_box frm_input" size="10" maxlength="5" required title="자동등록방지 입력">';
|
||||
$code .= '<p>이미지의 숫자를 순서대로 입력하세요. 새로고침을 클릭하시면 새로운 숫자가 나타납니다.</p>';
|
||||
$code .= '</fieldset>';
|
||||
return $code;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -1,4 +0,0 @@
|
||||
<?
|
||||
$g4_path = "../.."; // common.php 의 상대 경로
|
||||
include_once("$g4_path/common.php");
|
||||
?>
|
||||
@ -1,32 +0,0 @@
|
||||
<?
|
||||
include_once("./_common.php");
|
||||
include_once("$g4[path]/plugin/tcaptcha/tcaptcha.lib.php");
|
||||
|
||||
$user_token = trim($_POST['user_token']);
|
||||
$tcaptcha_token = get_session("ss_tcaptcha_token");
|
||||
if (!$user_token) {
|
||||
die("{\"error\":\"자동등록방지용 사용자 토큰값이 없습니다.\"}");
|
||||
}
|
||||
|
||||
if ($user_token != $tcaptcha_token) {
|
||||
die("{\"error\":\"자동등록방지용 토큰값이 틀립니다.\"}");
|
||||
}
|
||||
|
||||
$tcaptcha_error_count = (int)get_session("ss_tcaptcha_error_count");
|
||||
if ($tcaptcha_error_count >= _ANSWER_COUNT_) {
|
||||
die("{\"error\":\"입력하신 답변 횟수가 "._ANSWER_COUNT_."회를 넘었습니다.\n\n문제를 클릭하신후 다시 답변해 주십시오.\"}");
|
||||
}
|
||||
|
||||
$user_answer = $_POST['user_answer'];
|
||||
$is_answer = (get_session("ss_tcaptcha_answer") == $user_answer);
|
||||
if ($is_answer == false) {
|
||||
$tcaptcha_error_count++;
|
||||
set_session("ss_tcaptcha_error_count", $tcaptcha_error_count);
|
||||
// 토큰을 다시 생성
|
||||
$token = _token();
|
||||
set_session("ss_tcaptcha_token", $token);
|
||||
die("{\"error\":\"입력하신 답이 틀렸습니다.\",\"token\":\"$token\"}");
|
||||
}
|
||||
|
||||
die("{\"error\":\"\"}");
|
||||
?>
|
||||
@ -1,8 +0,0 @@
|
||||
<?php
|
||||
include_once("./_common.php");
|
||||
include_once("$g4[path]/plugin/tcaptcha/tcaptcha.lib.php");
|
||||
|
||||
$tcaptcha = new tcaptcha("kr");
|
||||
$tcaptcha->run();
|
||||
die("{\"tcaptcha\":\"{$tcaptcha->question}\",\"token\":\"{$tcaptcha->token}\"}");
|
||||
?>
|
||||
@ -1,33 +0,0 @@
|
||||
<?php
|
||||
include_once("./_common.php");
|
||||
include_once("$g4[path]/head.sub.php");
|
||||
?>
|
||||
<script src="<?="{$g4['path']}/plugin/tcaptcha/tcaptcha.js"?>"></script>
|
||||
|
||||
<h2>텍스트 캡챠 샘플 페이지</h2>
|
||||
<br />
|
||||
<br />
|
||||
<br />
|
||||
<form method="post" onsubmit="return form_submit(this);">
|
||||
<h2>문) <span id="tcaptcha"></span></h2>
|
||||
<div>
|
||||
답) 반드시 숫자로 입력하세요. <input type='text' id='user_answer' name='user_answer' size='3' maxlength='3' title='자동가입방지' required='required' />
|
||||
<input type='hidden' id='user_token' name='user_token' />
|
||||
<input type='submit' />
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<script>
|
||||
function form_submit(f)
|
||||
{
|
||||
if (!chk_tcaptcha(f.user_answer, f.user_token)) {
|
||||
return false;
|
||||
}
|
||||
alert("정답");
|
||||
return true;
|
||||
}
|
||||
</script>
|
||||
|
||||
<?
|
||||
include_once("$g4[path]/tail.sub.php");
|
||||
?>
|
||||
@ -1,44 +0,0 @@
|
||||
function chk_tcaptcha(user_answer, user_token)
|
||||
{
|
||||
if (typeof(user_answer) == "undefined") return false;
|
||||
if (typeof(user_token ) == "undefined") return false;
|
||||
|
||||
var error = false;
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: g4_path+"/plugin/tcaptcha/chk_answer.ajax.php",
|
||||
async: false,
|
||||
data: {
|
||||
"user_answer": user_answer.value,
|
||||
"user_token" : user_token.value
|
||||
},
|
||||
dataType: "json",
|
||||
success: function(data, textStatus, jqXHR) {
|
||||
error = data.error;
|
||||
if (data.token) {
|
||||
$("#user_token").val(data.token);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
if (error) {
|
||||
alert(error);
|
||||
user_answer.select();
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
$(function() {
|
||||
$("#tcaptcha").click(function() {
|
||||
$.ajax({
|
||||
url: g4_path+"/plugin/tcaptcha/run.php?t="+(new Date).getTime(),
|
||||
dataType: "json",
|
||||
success: function(data, textStatus, jqXHR) {
|
||||
$("#tcaptcha").html(data.tcaptcha);
|
||||
$("#user_token").val(data.token);
|
||||
}
|
||||
})
|
||||
})
|
||||
.css("cursor", "pointer");
|
||||
});
|
||||
@ -1,360 +0,0 @@
|
||||
<?php
|
||||
define('_ANSWER_COUNT_', 3);
|
||||
|
||||
$text_number = new stdClass;
|
||||
$text_number->kr = new stdClass;
|
||||
$text_number->en = new stdClass;
|
||||
|
||||
//$text_number->kr = (object)array('a'=>1);
|
||||
|
||||
// 기수 cardinal (양을 나타낼때 사용하는 수)
|
||||
$text_number->kr = (object)array(
|
||||
'number' => array(
|
||||
array("영","일","이","삼","사","오","육","칠","팔","구","십"),
|
||||
array("영","하나","둘","셋","넷","다섯","여섯","일곱","여덟","아홉","열")
|
||||
),
|
||||
// 서수 ordinal (순서를 나타낼때 사용하는 수)
|
||||
'ordinal' => array("영","첫번째","두번째","세번째","네번째","다섯번째","여섯번째","일곱번째","여덟번째","아홉번째","열번째"),
|
||||
'high' => array("다음 중 가장 큰 수는? %s.", "%s 중에서 가장 큰 수는?"),
|
||||
'low' => array("다음 중 가장 작은 수는? %s.", "%s 중에서 가장 작은 수는?"),
|
||||
'position0' => array("다음 중 %s 숫자는? %s."), // 인수가 두개 있으며 첫번째에 위치가, 두번째 인수에 질문이 나열된다.
|
||||
'position1' => array("%s 중 %s 숫자는?"), // 인수가 두개 있으며 첫번째에 인수가 두반째에 위치에 대한 질문이 나열된다.
|
||||
'add' => array("%s 더하기 %s ?", "%s + %s = ?"),
|
||||
'subtract' => array("%s 빼기 %s ?", "%s - %s = ?"),
|
||||
'multiply' => array("%s 곱하기 %s ?"),
|
||||
//'multiply' => array("%s 곱하기 %s ?", "%s 의 %s 배는 ?"),
|
||||
'and' => "그리고",
|
||||
);
|
||||
/*
|
||||
// 서수 ordinal (순서를 나타낼때 사용하는 수)
|
||||
$text_number->kr->ordinal = array("영","첫번째","두번째","세번째","네번째","다섯번째","여섯번째","일곱번째","여덟번째","아홉번째","열번째");
|
||||
$text_number->kr->plus = array("+","+","더하기");
|
||||
$text_number->kr->minus = array("-","-","빼기");
|
||||
$text_number->kr->multiply = array("x","×","*","곱하기");
|
||||
$text_number->kr->high = array("다음 중 가장 큰 수는? %s.", "%s 중에서 가장 큰 수는?");
|
||||
$text_number->kr->low = array("다음 중 가장 작은 수는? %s.", "%s 중에서 가장 작은 수는?");
|
||||
$text_number->kr->position0 =array("다음 중 %s 숫자는? %s."); // 인수가 두개 있으며 첫번째에 위치가, 두번째 인수에 질문이 나열된다.
|
||||
$text_number->kr->position1 =array("%s 중 %s 숫자는?"); // 인수가 두개 있으며 첫번째에 인수가 두반째에 위치에 대한 질문이 나열된다.
|
||||
$text_number->kr->add = array("%s 더하기 %s ?", "%s + %s = ?");
|
||||
$text_number->kr->subtract = array("%s 빼기 %s ?", "%s - %s = ?");
|
||||
$text_number->kr->and = "그리고";
|
||||
*/
|
||||
|
||||
$text_number->en = (object)array(
|
||||
'number' => array(
|
||||
array("zero","one","two","three","four","five","six","seven","eight","nine","ten"),
|
||||
array("zero","first","second","third","fourth","fifth","sixth","seventh","eighth","ninth","tenth")
|
||||
),
|
||||
'ordinal' => array("zero","1st","2nd","3rd","4th","5th","6th","7th","8th","9th","10th"),
|
||||
'high' => array("%s : which of these is the largest?"),
|
||||
'low' => array("%s : which of these is the smallest?"),
|
||||
'position0' => array("lists %s postion number ? %s."), // 인수가 두개 있으며 첫번째에 위치가, 두번째 인수에 질문이 나열된다.
|
||||
'position1' => array("%s lists %s postion number ?"), // 인수가 두개 있으며 첫번째에 인수가 두반째에 위치에 대한 질문이 나열된다.
|
||||
'add' => array("%s add %s ?", "%s plus %s ?", "%s + %s = ?"),
|
||||
'subtract' => array("%s subtract %s ?", "%s minus %s ?", "%s - %s = ?"),
|
||||
'multiply' => array("%s multiply %s ?"),
|
||||
'and' => "and"
|
||||
);
|
||||
|
||||
class tcaptcha
|
||||
{
|
||||
var $language;
|
||||
var $tnum; // text number 의 약어
|
||||
var $min_count = 3; // 최소 문제 갯수
|
||||
var $max_count = 4; // 최대 문제 갯수
|
||||
var $select; // 결과값 배열
|
||||
var $arabia; // 결과값 아라비아 숫자 배열
|
||||
var $count; // 결과값 수
|
||||
var $high; // 결과값 배열 중 가장 큰 값
|
||||
var $low; // 결과값 배열 중 가장 작은 값
|
||||
var $position; // 몇번째 숫자는 값이 얼마인가?
|
||||
var $question; // 문제
|
||||
var $answer; // 더하기, 빼기 시에 답
|
||||
|
||||
function tcaptcha($language='') {
|
||||
if (trim($language) == '')
|
||||
$language = 'kr';
|
||||
$this->set_language($language);
|
||||
}
|
||||
|
||||
function set_language($language) {
|
||||
$this->language = $language;
|
||||
}
|
||||
|
||||
function set_min_count($min_count) {
|
||||
$this->min_count = $min_count;
|
||||
}
|
||||
|
||||
function set_max_count($max_count) {
|
||||
$this->max_count = $max_count;
|
||||
}
|
||||
|
||||
function random_question() {
|
||||
$this->count = $count = rand($this->min_count, $this->max_count); // 숫자를 몇개 뿌려줄것인지?
|
||||
$select = array(); // 선택된 값들
|
||||
$arabia = array(); // 선택된 값들의 아라비아 숫자
|
||||
$high = 0;
|
||||
$low = 9999;
|
||||
while ($count != count($select)) {
|
||||
$choice = rand(0, count($this->tnum->number)-1); // 여러개의 숫자 형식중 하나를 선택한다.
|
||||
$number = $this->tnum->number[$choice];
|
||||
$index = rand(1, count($number)-1); // 영은 빼고
|
||||
if (in_array($index, $arabia)) continue;
|
||||
if (rand(0, 3) < 3) { // 아라비아 숫자도 들어가도록 한다.
|
||||
array_push($select, $number[$index]);
|
||||
} else {
|
||||
array_push($select, $index);
|
||||
}
|
||||
array_push($arabia, $index);
|
||||
if ($index > $high) {
|
||||
$high = $index;
|
||||
}
|
||||
if ($index < $low) {
|
||||
$low = $index;
|
||||
}
|
||||
}
|
||||
|
||||
$this->select = $select;
|
||||
$this->arabia = $arabia;
|
||||
$this->high = $high; // 배열중 가장 큰 값
|
||||
$this->low = $low; // 배열중 가장 작은 값
|
||||
|
||||
return $select;
|
||||
}
|
||||
|
||||
// 숫자의 중간에 , 나 and 를 넣는다.
|
||||
function comma_question($question) {
|
||||
$str = "";
|
||||
$and = false;
|
||||
$comma = "";
|
||||
for ($qi=0; $qi<count($question)-1; $qi++) {
|
||||
$comma = ", ";
|
||||
if ($and == false) {
|
||||
if (rand(0,2) == 0) {
|
||||
$comma = " {$this->tnum->and} ";
|
||||
$and = true;
|
||||
}
|
||||
}
|
||||
|
||||
//$unicode_array = utf8_to_unicode($question[$qi]);
|
||||
//array_walk($unicode_array, create_function('&$v,$k', '$v = "&#" . $v . ";";'));
|
||||
//print_r($unicode_array);
|
||||
//$unicode = implode("", $unicode_array);
|
||||
$str = $str . "<strong>" . $question[$qi] . "</strong>" . $comma;
|
||||
}
|
||||
return $str . "<strong>" . $question[$qi] . "</strong>";
|
||||
}
|
||||
|
||||
// 가장 큰수나 가장 작은수의 질문을 만든다.
|
||||
function series_question($question, $highlow) {
|
||||
$question = $this->comma_question($question);
|
||||
$highlow_array = $this->tnum->$highlow;
|
||||
return sprintf($highlow_array[rand(0, count($highlow_array)-1)], $question);
|
||||
}
|
||||
|
||||
// 몇번째 어떤수가 있는지의 질문을 만든다.
|
||||
function position_question($question) {
|
||||
$question = $this->comma_question($question);
|
||||
$position = rand(0, $this->count-1);
|
||||
$ordinal = $this->get_ordinal_value($position+1);
|
||||
$this->position = $this->arabia[$position]; // 몇번째 숫자는?의 답
|
||||
// 포지션 배열에 따라 인수의 위치가 다르다.
|
||||
if (rand(0,1) == 0) {
|
||||
$position_array = $this->tnum->position0;
|
||||
return sprintf($position_array[rand(0, count($position_array)-1)], $ordinal, $question);
|
||||
} else {
|
||||
$position_array = $this->tnum->position1;
|
||||
return sprintf($position_array[rand(0, count($position_array)-1)], $question, $ordinal);
|
||||
}
|
||||
}
|
||||
|
||||
// 더하기 계산 문제
|
||||
function add_question($question) {
|
||||
$add_array = $this->tnum->add;
|
||||
$rand = rand(0, count($add_array)-1);
|
||||
$first_number = $this->arabia[0];
|
||||
$second_number = $this->arabia[1];
|
||||
$this->answer = $first_number + $second_number;
|
||||
return sprintf($add_array[rand(0, count($add_array)-1)], $question[0], $question[1] );
|
||||
}
|
||||
|
||||
// a, b 변수값을 바꾼다.
|
||||
function swap(&$a, &$b)
|
||||
{
|
||||
$temp = $a;
|
||||
$a = $b;
|
||||
$b = $temp;
|
||||
}
|
||||
|
||||
// 빼기 계산 문제
|
||||
function subtract_question($question) {
|
||||
$subtract_array = $this->tnum->subtract;
|
||||
$rand = rand(0, count($subtract_array)-1);
|
||||
$first_number = $this->arabia[0];
|
||||
$second_number = $this->arabia[1];
|
||||
if ($first_number < $second_number) {
|
||||
$this->swap($first_number, $second_number);
|
||||
$this->swap($question[0], $question[1]);
|
||||
}
|
||||
$this->answer = $first_number - $second_number;
|
||||
return sprintf($subtract_array[$rand], $question[0], $question[1] );
|
||||
}
|
||||
|
||||
// 곱하기 계산 문제
|
||||
function multiply_question($question) {
|
||||
$multiply_array = $this->tnum->multiply;
|
||||
$rand = rand(0, count($multiply_array)-1);
|
||||
$first_number = $this->arabia[0];
|
||||
$second_number = $this->arabia[1];
|
||||
$this->answer = $first_number * $second_number;
|
||||
return sprintf($multiply_array[$rand], $question[0], $question[1] );
|
||||
}
|
||||
|
||||
// 서수값을 반환
|
||||
function get_ordinal_value($index) {
|
||||
return $this->tnum->ordinal[$index];
|
||||
}
|
||||
|
||||
// ajax 비교를 위한 코드 : 답을 저장해 놓는다.
|
||||
function set_session($answer) {
|
||||
$this->token = _token();
|
||||
set_session("ss_tcaptcha_token", $this->token);
|
||||
set_session("ss_tcaptcha_answer", $answer);
|
||||
set_session("ss_tcaptcha_error_count", 0);
|
||||
}
|
||||
|
||||
function run() {
|
||||
global $text_number;
|
||||
$this->tnum = $text_number->{$this->language};
|
||||
$random_question = $this->random_question();
|
||||
switch (rand(0,5)) {
|
||||
case 0 :
|
||||
$question = $this->series_question( $random_question, 'high' );
|
||||
$this->set_session($this->high);
|
||||
break;
|
||||
case 1 :
|
||||
$question = $this->series_question( $random_question, 'low' );
|
||||
$this->set_session($this->low);
|
||||
break;
|
||||
case 2 :
|
||||
$question = $this->add_question( $random_question );
|
||||
$this->set_session($this->answer);
|
||||
break;
|
||||
case 3 :
|
||||
$question = $this->subtract_question( $random_question );
|
||||
$this->set_session($this->answer);
|
||||
break;
|
||||
case 4 :
|
||||
$question = $this->multiply_question( $random_question );
|
||||
$this->set_session($this->answer);
|
||||
break;
|
||||
default :
|
||||
$question = $this->position_question( $random_question );
|
||||
$this->set_session($this->position);
|
||||
break;
|
||||
}
|
||||
$this->question = $question;
|
||||
return $question;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function html_unicode($unicode)
|
||||
{
|
||||
return "&#".$unicode.";";
|
||||
}
|
||||
|
||||
|
||||
function utf8_to_unicode( $str )
|
||||
{
|
||||
$unicode = array();
|
||||
$values = array();
|
||||
$lookingFor = 1;
|
||||
|
||||
for ($i = 0; $i < strlen( $str ); $i++ ) {
|
||||
|
||||
$thisValue = ord( $str[ $i ] );
|
||||
|
||||
if ( $thisValue < 128 ) $unicode[] = $thisValue;
|
||||
else {
|
||||
|
||||
if ( count( $values ) == 0 ) $lookingFor = ( $thisValue < 224 ) ? 2 : 3;
|
||||
|
||||
$values[] = $thisValue;
|
||||
|
||||
if ( count( $values ) == $lookingFor ) {
|
||||
|
||||
$number = ( $lookingFor == 3 ) ?
|
||||
( ( $values[0] % 16 ) * 4096 ) + ( ( $values[1] % 64 ) * 64 ) + ( $values[2] % 64 ):
|
||||
( ( $values[0] % 32 ) * 64 ) + ( $values[1] % 64 );
|
||||
|
||||
$unicode[] = $number;
|
||||
$values = array();
|
||||
$lookingFor = 1;
|
||||
|
||||
} // if
|
||||
|
||||
} // if
|
||||
|
||||
} // for
|
||||
|
||||
return $unicode;
|
||||
|
||||
}
|
||||
|
||||
function unicode_to_utf8($dec)
|
||||
{
|
||||
$unicode_hex = dechex($dec);
|
||||
$unicode = hexdec($unicode_hex);
|
||||
|
||||
$utf8 = "";
|
||||
|
||||
if ($unicode < 128) {
|
||||
$utf8 = chr($unicode);
|
||||
} elseif ( $unicode < 2048 ) {
|
||||
$utf8 .= chr( 192 + ( ( $unicode - ( $unicode % 64 ) ) / 64 ) );
|
||||
$utf8 .= chr( 128 + ( $unicode % 64 ) );
|
||||
} else {
|
||||
$utf8 .= chr( 224 + ( ( $unicode - ( $unicode % 4096 ) ) / 4096 ) );
|
||||
$utf8 .= chr( 128 + ( ( ( $unicode % 4096 ) - ( $unicode % 64 ) ) / 64 ) );
|
||||
$utf8 .= chr( 128 + ( $unicode % 64 ) );
|
||||
}
|
||||
return $utf8;
|
||||
}
|
||||
|
||||
|
||||
function chk_captcha()
|
||||
{
|
||||
$token = get_session("ss_tcaptcha_token");
|
||||
if ($token && $token == $_POST['user_token']) {
|
||||
$answer = get_session("ss_tcaptcha_answer");
|
||||
if ($answer && $answer == $_POST['user_answer']) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
set_session("ss_tcaptcha_token", "");
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
function chk_js_captcha()
|
||||
{
|
||||
return "if (!chk_tcaptcha(f.user_answer, f.user_token)) { return false; }\n";
|
||||
|
||||
}
|
||||
|
||||
|
||||
function run_captcha($encoding='kr')
|
||||
{
|
||||
$captcha = new tcaptcha($encoding);
|
||||
|
||||
$str = "<fieldset id=\"captcha\">\n";
|
||||
$str .= "<legend>자동등록방지</legend>\n";
|
||||
$str .= "<div><a href=\"javascript:;\" id=\"tcaptcha\">".$captcha->run()."</a></div>\n";
|
||||
$str .= "<span>답은 반드시 숫자로 입력하세요.</span>\n";
|
||||
$str .= "<input type=\"text\" id=\"user_answer\" name=\"user_answer\" title=\"자동등록방지 숫자\" size=\"10\" required=\"required\" />\n";
|
||||
$str .= "<input type=\"hidden\" id=\"user_token\" name=\"user_token\" value=\"{$captcha->token}\" />";
|
||||
$str .= "</fieldset>\n";
|
||||
return $str;
|
||||
}
|
||||
?>
|
||||
@ -1,5 +1,11 @@
|
||||
<?
|
||||
include_once("_common.php");
|
||||
include_once($g4['path'].'/lib/register.lib.php');
|
||||
|
||||
echo check_mb_email($_POST['reg_mb_id'], $_POST['reg_mb_email']);
|
||||
$mb_email = escape_trim($_POST['reg_mb_email']);
|
||||
$mb_id = escape_trim($_POST['reg_mb_id']);
|
||||
|
||||
if ($msg = empty_mb_email($mb_email)) die($msg);
|
||||
if ($msg = valid_mb_email($mb_email)) die($msg);
|
||||
if ($msg = exist_mb_email($mb_email, $mb_id)) die($msg);
|
||||
?>
|
||||
@ -1,5 +1,12 @@
|
||||
<?
|
||||
include_once("_common.php");
|
||||
include_once($g4['path'].'/lib/register.lib.php');
|
||||
|
||||
echo check_mb_id($_POST['reg_mb_id']);
|
||||
$mb_id = escape_trim($_POST['reg_mb_id']);
|
||||
|
||||
if ($msg = empty_mb_id($mb_id)) die($msg);
|
||||
if ($msg = valid_mb_id($mb_id)) die($msg);
|
||||
if ($msg = count_mb_id($mb_id)) die($msg);
|
||||
if ($msg = exist_mb_id($mb_id)) die($msg);
|
||||
if ($msg = reserve_mb_id($mb_id)) die($msg);
|
||||
?>
|
||||
@ -1,5 +1,12 @@
|
||||
<?
|
||||
include_once("_common.php");
|
||||
include_once($g4['path'].'/lib/register.lib.php');
|
||||
|
||||
echo check_mb_nick($_POST['reg_mb_nick']);
|
||||
$mb_nick = escape_trim($_POST['reg_mb_nick']);
|
||||
$mb_id = escape_trim($_POST['reg_mb_id']);
|
||||
|
||||
if ($msg = empty_mb_nick($mb_nick)) die($msg);
|
||||
if ($msg = valid_mb_nick($mb_nick)) die($msg);
|
||||
if ($msg = count_mb_nick($mb_nick)) die($msg);
|
||||
if ($msg = exist_mb_nick($mb_nick, $mb_id)) die($msg);
|
||||
?>
|
||||
@ -22,7 +22,8 @@ var reg_mb_nick_check = function() {
|
||||
type: "POST",
|
||||
url: member_skin_path+"/ajax_mb_nick_check.php",
|
||||
data: {
|
||||
"reg_mb_nick": ($("#reg_mb_nick").val())
|
||||
"reg_mb_nick": ($("#reg_mb_nick").val()),
|
||||
'reg_mb_id': encodeURIComponent($('#reg_mb_id').val())
|
||||
},
|
||||
cache: false,
|
||||
async: false,
|
||||
@ -40,8 +41,8 @@ var reg_mb_email_check = function() {
|
||||
type: 'POST',
|
||||
url: member_skin_path+'/ajax_mb_email_check.php',
|
||||
data: {
|
||||
'reg_mb_id': encodeURIComponent($('#reg_mb_id').val()),
|
||||
'reg_mb_email': $('#reg_mb_email').val()
|
||||
'reg_mb_email': $('#reg_mb_email').val(),
|
||||
'reg_mb_id': encodeURIComponent($('#reg_mb_id').val())
|
||||
},
|
||||
cache: false,
|
||||
async: false,
|
||||
|
||||
@ -1,9 +1,5 @@
|
||||
<?
|
||||
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
|
||||
$required = "";
|
||||
$readonly = "";
|
||||
if ($w == '') $required = "required";
|
||||
else if ($w == 'u') $readonly = "readonly";
|
||||
?>
|
||||
|
||||
<script>
|
||||
@ -15,9 +11,6 @@ var member_skin_path = "<?=$member_skin_path?>";
|
||||
<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" id="mb_id_enabled" name="mb_id_enabled" value="">
|
||||
<input type="hidden" id="mb_nick_enabled" name="mb_nick_enabled" value="">
|
||||
<input type="hidden" id="mb_email_enabled" name="mb_email_enabled" value="">
|
||||
<? if (isset($member['mb_sex'])) { ?><input type="hidden" name="mb_sex" value="<?=$member['mb_sex']?>"><? } ?>
|
||||
<? if (isset($member['mb_nick_date']) && $member['mb_nick_date'] <= date("Y-m-d", $g4['server_time'] - ($config['cf_nick_modify'] * 86400))) { // 별명수정일이 지나지 않았다면 ?>
|
||||
<input type="hidden" name="mb_nick_default" value="<?=$member['mb_nick']?>">
|
||||
@ -29,31 +22,17 @@ var member_skin_path = "<?=$member_skin_path?>";
|
||||
<tr>
|
||||
<th scope="row"><label for="reg_mb_id">아이디</label></th>
|
||||
<td>
|
||||
<<<<<<< HEAD
|
||||
<input type="text" id="reg_mb_id" name="mb_id" class="minlength_3" value="<?=$member['mb_id']?>" maxlength="20" <? if ($w=='u') { echo "readonly style='background-color:#dddddd;'"; } ?> <? if ($w=='') { echo 'required="required"'; } ?> title="회원아이디">
|
||||
=======
|
||||
<input type="text" id="reg_mb_id" name="mb_id" class="frm_input <?=$required?> <?=$readonly?>" value="<?=$member['mb_id']?>" maxlength="20" <?=$required?> <?=$readonly?>>
|
||||
>>>>>>> 8532cb03667c58ee858ff3c7a65c1e4fd1a2b4f9
|
||||
<input type="text" id="reg_mb_id" name="mb_id" class="frm_input minlength_3 <?=$required?> <?=$readonly?>" value="<?=$member['mb_id']?>" maxlength="20" <?=$required?> <?=$readonly?> title="회원아이디">
|
||||
<span id="msg_mb_id"></span>
|
||||
<span class="frm_info">영문자, 숫자, _ 만 입력 가능. 최소 3자이상 입력하세요.</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<<<<<<< HEAD
|
||||
<th scope="row"><label for="mb_password">패스워드</label></th>
|
||||
<td><input type="password" id="reg_mb_password" name="mb_password" class="minlength_3" <?=($w=='')?'required="required"':'';?> maxlength="20" title="패스워드"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><label for="reg_mb_password_re">패스워드 확인</label></th>
|
||||
<td><input type="password" id="reg_mb_password_re" name="mb_password_re" class="minlength_3" <?=($w=='')?'required="required"':'';?> maxlength="20" title="패스워드 확인"></td>
|
||||
=======
|
||||
<th scope="row"><label for="reg_mb_password">패스워드</label></th>
|
||||
<td><input type="password" id="reg_mb_password" name="mb_password" class="frm_input <?=$required?>" maxlength="20" <?=$required?>></td>
|
||||
<td><input type="password" id="reg_mb_password" name="mb_password" class="frm_input minlength_3 <?=$required?>" maxlength="20" <?=$required?> title="패스워드"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><label for="reg_mb_password_re">패스워드 확인</label></th>
|
||||
<td><input type="password" id="reg_mb_password_re" name="mb_password_re" class="frm_input <?=$required?>" maxlength="20" <?=$required?>></td>
|
||||
>>>>>>> 8532cb03667c58ee858ff3c7a65c1e4fd1a2b4f9
|
||||
<td><input type="password" id="reg_mb_password_re" name="mb_password_re" class="frm_input minlength_3 <?=$required?>" maxlength="20" <?=$required?> title="패스워드 확인"></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
@ -62,12 +41,8 @@ var member_skin_path = "<?=$member_skin_path?>";
|
||||
<tr>
|
||||
<th scope="row"><label for="reg_mb_name">이름</label></th>
|
||||
<td>
|
||||
<<<<<<< HEAD
|
||||
<input type="text" id="reg_mb_name" name="mb_name" class="hangul" value="<?=$member['mb_name']?>" <?=$member['mb_name']?"readonly2":"";?><?echo($w==''?'required="required"':'');?> title="이름">
|
||||
=======
|
||||
<input id="reg_mb_name" name="mb_name" class="frm_input <?=$required?> <?=$readonly?>" value="<?=$member['mb_name']?>" <?=$required?> <?=$readonly?>>
|
||||
>>>>>>> 8532cb03667c58ee858ff3c7a65c1e4fd1a2b4f9
|
||||
<? if ($w=='') { echo "(공백없이 한글만 입력 가능)"; } ?>
|
||||
<input id="reg_mb_name" name="mb_name" class="frm_input hangul <?=$required?> <?=$readonly?>" value="<?=$member['mb_name']?>" <?=$required?> <?=$readonly?> title="이름">
|
||||
<? if ($w=='') { echo "<span class=\"frm_info\">공백없이 한글만 입력하세요.</span>"; } ?>
|
||||
</td>
|
||||
</tr>
|
||||
<? if ($req_nick) { ?>
|
||||
@ -75,11 +50,7 @@ var member_skin_path = "<?=$member_skin_path?>";
|
||||
<th scope="row"><label for="reg_mb_nick">별명</label></th>
|
||||
<td>
|
||||
<input type="hidden" name="mb_nick_default" value="<?=isset($member['mb_nick'])?$member['mb_nick']:'';?>">
|
||||
<<<<<<< HEAD
|
||||
<input type="text" id="reg_mb_nick" name="mb_nick" value="<?=isset($member['mb_nick'])?$member['mb_nick']:'';?>" maxlength="20" <?echo($w==''?'required="required"':'');?> title="별명">
|
||||
=======
|
||||
<input type="text" id="reg_mb_nick" name="mb_nick" class="frm_input required" maxlength="20" value="<?=isset($member['mb_nick'])?$member['mb_nick']:'';?>" required>
|
||||
>>>>>>> 8532cb03667c58ee858ff3c7a65c1e4fd1a2b4f9
|
||||
<input type="text" id="reg_mb_nick" name="mb_nick" class="frm_input required" maxlength="20" value="<?=isset($member['mb_nick'])?$member['mb_nick']:'';?>" required title="별명">
|
||||
<span id="msg_mb_nick"></span>
|
||||
<span class="frm_info">
|
||||
공백없이 한글,영문,숫자만 입력 가능 (한글2자, 영문4자 이상)<br>
|
||||
@ -93,16 +64,12 @@ var member_skin_path = "<?=$member_skin_path?>";
|
||||
<th scope="row"><label for="reg_mb_email">E-mail</label></th>
|
||||
<td>
|
||||
<input type="hidden" name="old_email" value="<?=$member['mb_email']?>">
|
||||
<<<<<<< HEAD
|
||||
<input type="text" id="reg_mb_email" name="mb_email" class="email" value='<?=isset($member['mb_email'])?$member['mb_email']:'';?>' maxlength="100" required="required" title="E-mail">
|
||||
=======
|
||||
<input type="text" id="reg_mb_email" name="mb_email" class="frm_input <?=$config['cf_use_email_certify']?"required":"";?>" maxlength="100" value='<?=isset($member['mb_email'])?$member['mb_email']:'';?>' <?=$config['cf_use_email_certify']?"required":"";?>>
|
||||
>>>>>>> 8532cb03667c58ee858ff3c7a65c1e4fd1a2b4f9
|
||||
<input type="text" id="reg_mb_email" name="mb_email" class="frm_input email <?=$config['cf_use_email_certify']?"required":"";?>" maxlength="100" value='<?=isset($member['mb_email'])?$member['mb_email']:'';?>' <?=$config['cf_use_email_certify']?"required":"";?> title="E-mail">
|
||||
<span id="msg_mb_email"></span>
|
||||
<? if ($config['cf_use_email_certify']) { ?>
|
||||
<span class="frm_info">
|
||||
<? if ($w=='') { echo "e-mail 로 발송된 내용을 확인한 후 인증하셔야 회원가입이 완료됩니다."; } ?>
|
||||
<? if ($w=='u') { echo "e-mail 주소를 변경하시면 다시 인증하셔야 합니다."; } ?>
|
||||
<? if ($w=='') { echo "E-mail 로 발송된 내용을 확인한 후 인증하셔야 회원가입이 완료됩니다."; } ?>
|
||||
<? if ($w=='u') { echo "E-mail 주소를 변경하시면 다시 인증하셔야 합니다."; } ?>
|
||||
</span>
|
||||
<? } ?>
|
||||
</td>
|
||||
@ -223,7 +190,7 @@ var member_skin_path = "<?=$member_skin_path?>";
|
||||
<? if ($w == "" && $config['cf_use_recommend']) { ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="reg_mb_recommend">추천인아이디</label></th>
|
||||
<td><input type="text" id="reg_mb_recommend" name="mb_recommend"></td>
|
||||
<td><input type="text" id="reg_mb_recommend" name="mb_recommend" class="frm_input" title="추천인아이디"></td>
|
||||
</tr>
|
||||
<? } ?>
|
||||
</table>
|
||||
@ -321,7 +288,7 @@ function fregisterform_submit(f)
|
||||
if ((f.w.value == "") || (f.w.value == "u" && f.mb_email.defaultValue != f.mb_email.value)) {
|
||||
var msg = reg_mb_email_check();
|
||||
if (msg) {
|
||||
alert(mdg);
|
||||
alert(msg);
|
||||
f.reg_mb_email.select();
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -8,15 +8,15 @@ if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
|
||||
</header>
|
||||
|
||||
<p>
|
||||
<?=$mb[mb_name]?>님의 회원가입을 진심으로 축하합니다.<br>
|
||||
회원님의 아이디는 <?=$mb[mb_id]?> 입니다.<br>
|
||||
<?=$mb['mb_name']?>님의 회원가입을 진심으로 축하합니다.<br>
|
||||
회원님의 아이디는 <?=$mb['mb_id']?> 입니다.<br>
|
||||
회원님의 패스워드는 아무도 알 수 없는 암호화 코드로 저장되므로 안심하셔도 좋습니다.<br>
|
||||
아이디, 패스워드 분실시에는 회원가입시 입력하신 패스워드 분실시 질문, 답변을 이용하여 찾을 수 있습니다.
|
||||
</p>
|
||||
|
||||
<? if ($config[cf_use_email_certify]) { ?>
|
||||
<? if ($config['cf_use_email_certify']) { ?>
|
||||
<p>
|
||||
회원 가입 시 입력하신 이메일 <strong><?=$mb[mb_email]?></strong>로 발송된 내용을 확인하신 후 인증하셔야 회원가입이 완료됩니다.
|
||||
회원 가입 시 입력하신 이메일 <strong><?=$mb['mb_email']?></strong>로 발송된 내용을 확인하신 후 인증하셔야 회원가입이 완료됩니다.
|
||||
</p>
|
||||
<? } ?>
|
||||
|
||||
@ -25,6 +25,6 @@ if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
|
||||
감사합니다.
|
||||
</p>
|
||||
|
||||
<a href="<?=$g4[url]?>/">메인으로</a>
|
||||
<a href="<?=$g4['url']?>/">메인으로</a>
|
||||
|
||||
</article>
|
||||
Reference in New Issue
Block a user