ID 저장 기능을 사용 하시는 분들 .. 도와 주세요. > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

ID 저장 기능을 사용 하시는 분들 .. 도와 주세요. 정보

ID 저장 기능을 사용 하시는 분들 .. 도와 주세요.

본문

제가 예전에 jaepe님이 팁에 올려 놓은 그대로 따라서 해보았지만
 
아이디 저장 기능이 되지 않았습니다. 그래서 더더욱 이것 저것 찾아봣지만
 
이렇타할 해답을 얻지 못하고 있습니다.  그와중에 조금이나마 힌트가 되었던건
 
롤로님의 그누보드 메인의 자바 스크립을 가져 가라는 것이었습니다.
 
하지만 저처럼 초보는 어떤 스크립을 가져다 써야 하는지 망막 하구요..
 
그래서 이글을 다시 올립니다.
 
아이디 저장 기능 사용 예제 하나 부탁 드립니다.
 
시간이 없으시다면 어느 파일을 건들어야 하고 어떤 걸 첨부해야 하는지만이라도...
 
조언 부탁 드려요..

댓글 전체

로그인 스킨에

function fhead_submit(f)

 중에

    if (document.getElementById('id_save').checked) {
        set_cookie('ck_id_save', f.mb_id.value, 24*30)
    }

가 있는지 살펴 보세요.


해당 페이지 주소 적어 주시면 문제 해결이 도움이 됩니다.
다시 한번 디폴트 셋팅 했습니다.
다음 사항은 이렇습니다.  jinsilro.com이라는 폴더에 그누보드를 압축 풀어 html이라는 폴더로
이름을 변경 하였습니다.
/www/jinsilro.com/html/  <------ 요 안에 모든 파일이 있게 됩니다.

다음 회원 한명 가입 했습니다.  그 회원 아이디로 테스트 했구요..

파일 변경한건  /bbs/login_check.php
----------------------------------------------------------------------------------
// 3.26
// 아이디 쿠키에 한달간 저장
if ($auto_login) {
    // 3.27
    // 자동로그인 ---------------------------
    // 쿠키 한달간 저장
    $key = md5($_SERVER[SERVER_ADDR] . $_SERVER[REMOTE_ADDR] . $_SERVER[HTTP_USER_AGENT] . $mb[mb_password]);
    set_cookie('ck_mb_id', $mb[mb_id], 86400 * 31);
    set_cookie('ck_auto', $key, 86400 * 31);
    // 자동로그인 end ---------------------------
} else {
    set_cookie('ck_mb_id', '', 0);
    set_cookie('ck_auto', '', 0);
}

if($id_save) {
    set_cookie('ck_id_save', $mb[mb_id], time()+2592000);
}else{
    set_cookie('ck_id_save', '', 0);
}
----------------------------------------------------------------------
그냥 제페님 말씀대로 오토 로긴 아래 카피해 넣었습니다.
다음으로 skin/out_login/basic/out_login_skin1.php를 수정하였습니다.

------------------------------------------------------------------------------------------------
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가

$ck_id_save = get_cookie("ck_id_save");

if ($ck_id_save) {
$ch_id_save_chk = "checked";
}

?>
<script type="text/javascript" language=JavaScript>
// 엠파스 로긴 참고
var bReset = true;
function chkReset(f)
{
    if (bReset) { if ( f.mb_id.value == '아이디' ) f.mb_id.value = ''; bReset = false; }
    document.getElementById("pw1").style.display = "none";
    document.getElementById("pw2").style.display = "";
}
</script>

<!-- 로그인 전 외부로그인 시작 -->
<table width="220" border="0" cellpadding="0" cellspacing="0">
<form name="fhead" method="post" action="javascript:fhead_submit(document.fhead);" autocomplete="off">
<input type="hidden" name="url" value="<?=$urlencode?>">
<tr>
    <td width="220" height="42" colspan="6" valign="top"><img src="<?=$outlogin_skin_path?>/img/login_top.gif" width="220" height="42"></td>
</tr>
<tr>
    <td width="5" height="114" rowspan="5" background="<?=$outlogin_skin_path?>/img/login_left_bg.gif"></td>
    <td width="210" height="9" colspan="4"></td>
    <td width="5" height="114" rowspan="5" background="<?=$outlogin_skin_path?>/img/login_right_bg.gif"></td>
</tr>
<tr>
    <td width="210" colspan="4">
        <table width="210" border="0" cellpadding="0" cellspacing="0">
        <tr>
            <td width="141">
                <table width="141" border="0" cellpadding="0" cellspacing="0">
                <tr>
                    <td width="35" height="23"><img src="<?=$outlogin_skin_path?>/img/login_id.gif" width="35" height="23"></td>
                    <td width="106" height="23" colspan="2" align="center"><input name="mb_id" type="text" size="12" maxlength="20" required itemname="아이디" value='아이디' onMouseOver='chkReset(this.form);' onFocus='chkReset(this.form);' value='<?=$ck_id_save?>'>
</td>
                </tr>
                <tr>
                    <td width="35" height="23"><img src="<?=$outlogin_skin_path?>/img/login_pw.gif" width="35" height="23"></td>
                    <td id=pw1 width="106" height="23" colspan="2" align="center"><input type="text" size="12" maxlength="20" required itemname="패스워드" value='패스워드' onMouseOver='chkReset(this.form);' onfocus='chkReset(this.form);'></td>
                    <td id=pw2 style='display:none;' width="106" height="23" colspan="2" align="center"><input name="mb_password" type="password" size="12" maxlength="20" itemname="패스워드" onMouseOver='chkReset(this.form);' onfocus='chkReset(this.form);'></td>
                </tr>
                </table>
            </td>
            <td width="69" height="46" rowspan="2" align="center"><input type="image" src="<?=$outlogin_skin_path?>/img/login_button.gif" width="52" height="46"></td>
        </tr>
        </table></td>
</tr>
<tr>
    <td width="35" height="28"></td>
    <td width="20" height="28" valign="top"><input type="checkbox" name="auto_login" value="1" onclick="if (this.checked) { if (confirm('자동로그인을 사용하시면 다음부터 회원아이디와 패스워드를 입력하실 필요가 없습니다.\n\n\공공장소에서는 개인정보가 유출될 수 있으니 사용을 자제하여 주십시오.\n\n자동로그인을 사용하시겠습니까?')) { this.checked = true; } else { this.checked = false; } }"></td>
    <td width="86"><img src="<?=$outlogin_skin_path?>/img/login_auto.gif" width="46" height="28"></td>
    <td width="69" height="28"><input type='checkbox' id='id_save' name='id_save' <?=$g4[path]/$ch_id_save_chk?>>ID 저장</td>
</tr>
<tr>
    <td height="20"></td>
    <td height="20" colspan="3">
        <a href="javascript:win_password_forget();"><img src="<?=$outlogin_skin_path?>/img/login_pw_find_button.gif" width="90" height="20" border="0"></a>
        <a href="<?=$g4[bbs_path]?>/register.php"><img src="<?=$outlogin_skin_path?>/img/login_join_button.gif" width="69" height="20" border="0"></a></td>
</tr>
<tr>
    <td width="210" colspan="4"></td>
</tr>
<tr>
    <td width="220" height="14" colspan="6"><img src="<?=$outlogin_skin_path?>/img/login_down.gif" width="220" height="14"></td>
</tr>
</form>
</table>

<script language="JavaScript">
function fhead_submit(f)
{
    if (!f.mb_id.value)
    {
        alert("회원아이디를 입력하십시오.");
        f.mb_id.focus();
        return;
    }

    if (document.getElementById('pw2').style.display!='none' && !f.mb_password.value)
    {
        alert("패스워드를 입력하십시오.");
        f.mb_password.focus();
        return;
    }
    if (document.getElementById('id_save').checked) {
        set_cookie('ck_id_save', f.mb_id.value, 24*30)
    }

    f.action = "<?=$g4[bbs_path]?>/login_check.php";
    f.submit();
}
</script>
<!-- 로그인 전 외부로그인 끝 -->
_________________________________________________________

이렇게 두개의 파일만을 건들었습니다.  롤로님께서 말씀하신데로
자바 스크립트 안에 다음과 같이 넣었습니다.

에코를 찍어봣는데 쿠키 세이브는 잘되는데 세이브된 쿠키를 읽어 들이는 과정에서
문제가 발생되는것으로 추정 됩니다.

이글을 보시고 답변좀 주세요... 미리 감사합니다.
스킨에서
if ($ck_id_save) {
$ch_id_save_chk = "checked";
}  else $ch_id_save_chk = "아이디";


<td width="106" height="23" colspan="2" align="center"><input name="mb_id" type="text" size="12" maxlength="20" required itemname="아이디" value='아이디' onMouseOver='chkReset(this.form);' onFocus='chkReset(this.form);' value='<?=$ck_id_save?>'>

value='아이디'                <--- 삭제
value='<?=$ck_id_save?>

소스보기 할 수 있게 주소를 알려 주시면 쉽게 알 수 있을지도 모르겠습니다.
www.jinsilro.com 입니다.

디폴트 셋업을 하고 롤로님의 마지막 수정안을 해보았지만 되지 않습니다.

문제는 다 잘 동작하는 $ck_id_save = get_cookie("ck_id_save");  이넘이 동작을 하지

않는듯 보입니다. 아무리 에코를 찍어보고 직접 값을 입력해 보고 그래도 안됩니다.

설마 위의 title 때문에 그러진 안겠죠.. 왜냐면 그냥 몰라서 그냥 안건들엿거든요..

url만 지정 해놓구요..  이런거하고는 전혀 관련이 없어 보이는데.. get_cookie 이함수가

작동을 안하는건 분명한데 말이죠...감이 안잡히네요...

common.php 에서 무슨 파일을 설정해 줘야 하나요  ?
글들을 뒤져보니 common.php이야기도 잠깐 언급이 되던데요..
전체 66,554 |RSS
그누4 질문답변 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT