11.Nas_1


최고관리자 자동로그인 가능하게 하기


  • 링크


  • 컨텐츠 정보

    • 20,073 조회
    • 2 댓글
    • 0 추천
    • 목록

    본문

    \r\n
    최고관리자 자동로그인 가능하게 \r\n하기
    btn_scrap.gif \r\n
    \r\n
    \r\n
    \r\n
    글쓴이 : miwit.gif 곱슬최씨
    \r\n
    icon_view.gif 조회 : 3,225 icon_good.gif 추천 : 10 \r\n
    icon_file.gif mw.admin.auto.login.extend.php (1.4K) [276] DATE : 2008-07-16 \r\n16:58:44
    \r\n
    \r\n
    그누보드에는 자동로그인 기능이 있어 유용합니다.
    하지만 최고관리자는 보안 때문에 자동로그인을 사용할 \r\n수 없게 되어있습니다.

    자동로그인에 관한 코드는 common.php 에 있습니다.
    최고관리자도 자동로그인이 되도록 하려면 \r\ncommon.php 파일을 수정해야 합니다.

    하지만 그누보드의 원본을 수정하게 되면 추후 업데이트시 곤란한 상황이 발생할 수 \r\n있습니다.
    그누보드에서는 이러한 상황을 위해 확장기능을 extend 디렉토리에 추가할 수 있게 되어있습니다.
    extend 디렉토리에 \r\nphp 파일을 만들어 업로드 해두면 자동으로 읽어 실행하죠.

    최고관리자의 자동로그인 기능 또한 코드를만들어 extend 에 업로드 \r\n해두면 쉽게 구현할 수 있습니다.
    이 게시물의 첨부파일을 다운로드하셔도 되고 아래 코드를 이용해 직접 파일을 만들어 extend 디렉토리에 \r\n업로드 하시면 됩니다.

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

    // 자동로그인 \r\n---------------------------------------
    if (!$_SESSION['ss_mb_id'])
    // \r\n회원아이디가 쿠키에 저장되어 있다면 (3.27)
    if ($tmp_mb_id = \r\nget_cookie("ck_mb_id"))
    {
    $sql = " select mb_password, \r\nmb_intercept_date, mb_leave_date, mb_email_certify
    from \r\n{$g4['member_table']} where mb_id = '$tmp_mb_id' ";
    $row = \r\nsql_fetch($sql);
    $key = md5($_SERVER['SERVER_ADDR'] . \r\n$_SERVER['REMOTE_ADDR'] . $_SERVER['HTTP_USER_AGENT'] . \r\n$row['mb_password']);
    // 쿠키에 저장된 키와 같다면
    $tmp_key = \r\nget_cookie("ck_auto");
    if ($tmp_key == $key && \r\n$tmp_key)
    {
    // 차단, 탈퇴가 아니고 메일인증이 사용이면서 인증을 \r\n받았다면
    if ($row['mb_intercept_date'] == "" \r\n&&
    $row['mb_leave_date'] == "" \r\n&&
    (!$config['cf_use_email_certify'] || \r\npreg_match('/[1-9]/', $row['mb_email_certify'])) )
    \r\n{
    // 세션에 회원아이디를 저장하여 로그인으로 간주
    \r\nset_session("ss_mb_id", $tmp_mb_id);
    // 페이지를 \r\n재실행
    echo "<script language='javascript'> \r\nwindow.location.reload(); </script>";
    \r\nexit;
    }
    }
    // $row 배열변수 해제
    \r\nunset($row);
    }
    // 자동로그인 end \r\n---------------------------------------
    ?>

    \r\n
    \r\n
    .
    \r\n----------------------------------------------
    \r\nHomepc.11q.kr
    \r\n========================\n\n[이 게시물은 관리자님에 의해 2013-06-10 09:15:27 12.H_PDS에서 이동 됨]\n
    [이 게시물은 관리자님에 의해 2013-11-18 21:29:50 11.H_BBS에서 이동 됨]
    뷰PDF add1,add2



    관련자료

    댓글 2

    최고관리자님의 댓글

    최고관리자로 로그인하신것은 아닌가요? \r\n최고관리자로 선언된 아이디는 자동로그인이 적용되지 않습니다. \r\n\r\n최고관리자로서 자동로그인 기능을 사용하고자 하신다면 아래를 수정하세요 \r\n( 출처 : http://happyjung.com/gnuboard/bbs/board.php?bo_table=lecture&wr_id=419 ) \r\n\r\n/common.php 260~ 라인 \r\n\r\n    // 자동로그인 --------------------------------------- \r\n    // 회원아이디가 쿠키에 저장되어 있다면 (3.27) \r\n    if ($tmp_mb_id = get_cookie("ck_mb_id")) \r\n    { \r\n        // 최고관리자는 자동로그인 금지 \r\n        if ($tmp_mb_id != $config['cf_admin']) \r\n        { \r\n            $sql = " select mb_password, mb_intercept_date, mb_leave_date, mb_email_certify \r\n... \r\n            // $row 배열변수 해제 \r\n            unset($row); \r\n        } \r\n    } \r\n    // 자동로그인 end ---------------------------------------

    최고관리자님의 댓글

    /common.php 260~ 라인\r\n\r\n    // 자동로그인 ---------------------------------------\r\n    // 회원아이디가 쿠키에 저장되어 있다면 (3.27)\r\n    if ($tmp_mb_id = get_cookie("ck_mb_id")) \r\n    {\r\n        // 최고관리자는 자동로그인 금지\r\n        if ($tmp_mb_id != $config['cf_admin']) \r\n        {\r\n            $sql = " select mb_password, mb_intercept_date, mb_leave_date, mb_email_certify\r\n...\r\n            // $row 배열변수 해제\r\n            unset($row);\r\n        }\r\n    }\r\n    // 자동로그인 end ---------------------------------------\r\n\r\n\r\n\r\n위의 내용에서 if 문을 아래와 같이 주석\r\n\r\n\r\n\r\n    // 자동로그인 ---------------------------------------\r\n    // 회원아이디가 쿠키에 저장되어 있다면 (3.27)\r\n    if ($tmp_mb_id = get_cookie("ck_mb_id")) \r\n    {\r\n        // 최고관리자는 자동로그인 금지\r\n//        if ($tmp_mb_id != $config['cf_admin']) \r\n//        {\r\n            $sql = " select mb_password, mb_intercept_date, mb_leave_date, mb_email_certify\r\n...\r\n            // $row 배열변수 해제\r\n            unset($row);\r\n//        }\r\n    }\r\n    // 자동로그인 end ---------------------------------------


    전체 1,767 / 1 페이지
    게시물이 없습니다.(다음페이지로 이동 하세요)
    전체 1,767 / 1 페이지



    ♥간단_메모글♥


    최근글


    새댓글



    PHP 안에 HTML ☞ 홈페이지 화면갱신 시간은 ♨
    ▶ 2024-11-25 08:14:02

    오늘의 홈 현황


    • 현재 접속자♨ 274 명
    • 오늘 가입자※ 0 명
    • 어제 가입자※ 6 명
    • 주간 가입자※ 11 명
    • 오늘 방문자 1,814 명
    • 어제 방문자 4,085 명
    • 최대 방문자 13,042 명
    • 전체 방문자 4,811,728 명
    • 전체 게시물※ 8,858 개
    • 전체 댓글수※ 25,238 개
    • 전체 회원수 11,331 명

    QR코드


    ☞ QR코드 스캔은 kakao앱 자체 QR코드

    알림 0








    최신글↑