답변 2개
채택된 답변
+20 포인트
9년 전
그누보드 커스텀 안된 것을 기준으로 설명을 드리겠습니다.
회원가입파일 스킨 폴더의 register_form.skin.php 파일
</p><p> <tr></p><p> <th scope="row"><label for="reg_mb_name">이름<strong class="sound_only">필수</strong></label></th></p><p> <td></p><p> <?php if ($config['cf_cert_use']) { ?></p><p> <span class="frm_info">아이핀 본인확인 후에는 이름이 자동 입력되고 휴대폰 본인확인 후에는 이름과 휴대폰번호가 자동 입력되어 수동으로 입력할수 없게 됩니다.</span></p><p> <?php } ?></p><p> <input type="text" id="reg_mb_name" name="mb_name" value="<?php echo $member['mb_name'] ?>" <?php echo $required ?> <?php echo $readonly; ?> class="frm_input <?php echo $required ?> <?php echo $readonly ?>" size="10"></p><p> <?php</p><p> if($config['cf_cert_use']) {</p><p> if($config['cf_cert_ipin'])</p><p> echo '<button type="button" id="win_ipin_cert" class="btn_frmline">아이핀 본인확인</button>'.PHP_EOL;</p><p> if($config['cf_cert_hp'])</p><p> echo '<button type="button" id="win_hp_cert" class="btn_frmline">휴대폰 본인확인</button>'.PHP_EOL;</p><p> </p><p> echo '<noscript>본인확인을 위해서는 자바스크립트 사용이 가능해야합니다.</noscript>'.PHP_EOL;</p><p> }</p><p> ?></p><p> <?php</p><p> if ($config['cf_cert_use'] && $member['mb_certify']) {</p><p> if($member['mb_certify'] == 'ipin')</p><p> $mb_cert = '아이핀';</p><p> else</p><p> $mb_cert = '휴대폰';</p><p> ?></p><p> <div id="msg_certify"></p><p> <strong><?php echo $mb_cert; ?> 본인확인</strong><?php if ($member['mb_adult']) { ?> 및 <strong>성인인증</strong><?php } ?> 완료</p><p> </div></p><p> <?php } ?></p><p> </td></p><p> </tr></p><p>
여기서 이름 입력 부분을 아에 주석 처리, 혹은 제거해 줍니다.
그 다음 아래의 스크립트 부분
</p><p>// submit 최종 폼체크</p><p> function fregisterform_submit(f)</p><p> {</p><p> // 회원아이디 검사</p><p> if (f.w.value == "") {</p><p> var msg = reg_mb_id_check();</p><p> if (msg) {</p><p> alert(msg);</p><p> f.mb_id.select();</p><p> return false;</p><p> }</p><p> }</p><p> </p><p> if (f.w.value == "") {</p><p> if (f.mb_password.value.length < 3) {</p><p> alert("비밀번호를 3글자 이상 입력하십시오.");</p><p> f.mb_password.focus();</p><p> return false;</p><p> }</p><p> }</p><p> </p><p> if (f.mb_password.value != f.mb_password_re.value) {</p><p> alert("비밀번호가 같지 않습니다.");</p><p> f.mb_password_re.focus();</p><p> return false;</p><p> }</p><p> </p><p> if (f.mb_password.value.length > 0) {</p><p> if (f.mb_password_re.value.length < 3) {</p><p> alert("비밀번호를 3글자 이상 입력하십시오.");</p><p> f.mb_password_re.focus();</p><p> return false;</p><p> }</p><p> }</p><p> </p><p> // 이름 검사</p><p> if (f.w.value=="") {</p><p> if (f.mb_name.value.length < 1) {</p><p> alert("이름을 입력하십시오.");</p><p> f.mb_name.focus();</p><p> return false;</p><p> }</p><p> </p><p> /*</p><p> var pattern = /([^가-힣\x20])/i;</p><p> if (pattern.test(f.mb_name.value)) {</p><p> alert("이름은 한글로 입력하십시오.");</p><p> f.mb_name.select();</p><p> return false;</p><p> }</p><p> */</p><p> }</p><p> </p><p> <?php if($w == '' && $config['cf_cert_use'] && $config['cf_cert_req']) { ?></p><p> // 본인확인 체크</p><p> if(f.cert_no.value=="") {</p><p> alert("회원가입을 위해서는 본인확인을 해주셔야 합니다.");</p><p> return false;</p><p> }</p><p> <?php } ?></p><p> </p><p> // 닉네임 검사</p><p> if ((f.w.value == "") || (f.w.value == "u" && f.mb_nick.defaultValue != f.mb_nick.value)) {</p><p> var msg = reg_mb_nick_check();</p><p> if (msg) {</p><p> alert(msg);</p><p> f.reg_mb_nick.select();</p><p> return false;</p><p> }</p><p> }</p><p> </p><p> // E-mail 검사</p><p> if ((f.w.value == "") || (f.w.value == "u" && f.mb_email.defaultValue != f.mb_email.value)) {</p><p> var msg = reg_mb_email_check();</p><p> if (msg) {</p><p> alert(msg);</p><p> f.reg_mb_email.select();</p><p> return false;</p><p> }</p><p> }</p><p> </p><p> <?php if (($config['cf_use_hp'] || $config['cf_cert_hp']) && $config['cf_req_hp']) { ?></p><p> // 휴대폰번호 체크</p><p> var msg = reg_mb_hp_check();</p><p> if (msg) {</p><p> alert(msg);</p><p> f.reg_mb_hp.select();</p><p> return false;</p><p> }</p><p> <?php } ?></p><p> </p><p> if (typeof f.mb_icon != "undefined") {</p><p> if (f.mb_icon.value) {</p><p> if (!f.mb_icon.value.toLowerCase().match(/.(gif)$/i)) {</p><p> alert("회원아이콘이 gif 파일이 아닙니다.");</p><p> f.mb_icon.focus();</p><p> return false;</p><p> }</p><p> }</p><p> }</p><p> </p><p> if (typeof(f.mb_recommend) != "undefined" && f.mb_recommend.value) {</p><p> if (f.mb_id.value == f.mb_recommend.value) {</p><p> alert("본인을 추천할 수 없습니다.");</p><p> f.mb_recommend.focus();</p><p> return false;</p><p> }</p><p> </p><p> var msg = reg_mb_recommend_check();</p><p> if (msg) {</p><p> alert(msg);</p><p> f.mb_recommend.select();</p><p> return false;</p><p> }</p><p> }</p><p> </p><p> <?php echo chk_captcha_js(); ?></p><p> </p><p> document.getElementById("btn_submit").disabled = "disabled";</p><p> </p><p> return true;</p><p> }</p><p>
이 부분중 아래의 코드 부분을 제거해 줍니다.
</p><p>// 이름 검사</p><p> if (f.w.value=="") {</p><p> if (f.mb_name.value.length < 1) {</p><p> alert("이름을 입력하십시오.");</p><p> f.mb_name.focus();</p><p> return false;</p><p> }</p><p> </p><p> /*</p><p> var pattern = /([^가-힣\x20])/i;</p><p> if (pattern.test(f.mb_name.value)) {</p><p> alert("이름은 한글로 입력하십시오.");</p><p> f.mb_name.select();</p><p> return false;</p><p> }</p><p> */</p><p> }</p><p>
▲ 여기서 이름 체크가 들어갑니다.
다음으로, /bbs/register_form_update.php 파일의 35번라인
</p><p>$mb_password = trim($_POST['mb_password']);</p><p>$mb_password_re = trim($_POST['mb_password_re']);</p><p>$mb_name = trim($_POST['mb_name']);</p><p>$mb_nick = trim($_POST['mb_nick']);</p><p>$mb_email = trim($_POST['mb_email']);</p><p>$mb_sex = isset($_POST['mb_sex']) </p><p>
이 부분에서, 회원 이름의 변수를 담는 $mb_name 부분에 기본 값으로 한글을 넣어 줍니다.
완전히 넣지 않을 경우, 다른 쪽에서 오류를 발생시킬 수 있으므로 임의로 공통적으로 사용될 이름을 넣어 줍니다.
</p><p style="font-size: 14.6667px;">$mb_password = trim($_POST['mb_password']);</p><p style="font-size: 14.6667px;">$mb_password_re = trim($_POST['mb_password_re']);</p><p style="font-size: 14.6667px;">$mb_name = "회원";</p><p style="font-size: 14.6667px;">$mb_nick = trim($_POST['mb_nick']);</p><p style="font-size: 14.6667px;">$mb_email = trim($_POST['mb_email']);</p><p style="font-size: 14.6667px;">$mb_sex = isset($_POST['mb_sex']) </p><p style="font-size: 14.6667px;">
이렇게 수정 하시면 이름을 입력 하지 않더라도 정상적으로 돌아 갈 것입니다.
정보 공개 부분은
</p><p><?php if (isset($member['mb_open_date']) && $member['mb_open_date'] <= date("Y-m-d", G5_SERVER_TIME - ($config['cf_open_modify'] * 86400)) || empty($member['mb_open_date'])) { // 정보공개 수정일이 지났다면 수정가능 ?></p><p> <tr></p><p> <th scope="row"><label for="reg_mb_open">정보공개</label></th></p><p> <td></p><p> <span class="frm_info"></p><p> 정보공개를 바꾸시면 앞으로 <?php echo (int)$config['cf_open_modify'] ?>일 이내에는 변경이 안됩니다.</p><p> </span></p><p> <input type="hidden" name="mb_open_default" value="<?php echo $member['mb_open'] ?>"></p><p> <input type="checkbox" name="mb_open" value="1" <?php echo ($w=='' || $member['mb_open'])?'checked':''; ?> id="reg_mb_open"></p><p> 다른분들이 나의 정보를 볼 수 있도록 합니다.</p><p> </td></p><p> </tr></p><p> <?php } else { ?></p><p> <tr></p><p> <th scope="row">정보공개</th></p><p> <td></p><p> <span class="frm_info"></p><p> 정보공개는 수정후 <?php echo (int)$config['cf_open_modify'] ?>일 이내, <?php echo date("Y년 m월 j일", isset($member['mb_open_date']) ? strtotime("{$member['mb_open_date']} 00:00:00")+$config['cf_open_modify']*86400:G5_SERVER_TIME+$config['cf_open_modify']*86400); ?> 까지는 변경이 안됩니다.
</p><p> 이렇게 하는 이유는 잦은 정보공개 수정으로 인하여 쪽지를 보낸 후 받지 않는 경우를 막기 위해서 입니다.</p><p> </span></p><p> <input type="hidden" name="mb_open" value="<?php echo $member['mb_open'] ?>"></p><p> </td></p><p> </tr></p><p> <?php } ?></p><p>
해당 부분을 제거해 주시면 공개하지 않음이 기본 상태로 입력됩니다.
로그인 후 평가할 수 있습니다
답변에 대한 댓글 1개
�
헤븐코리아
9년 전
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
신경써주셔서 감사합니다