비로그인에 대한 사이드뷰 및 회원의 아이디 노출 제한 > 그누4 팁자료실

그누4 팁자료실

그누보드4와 관련된 팁을 여러분들과 함께 공유하세요.
나누면 즐거움이 커집니다.

비로그인에 대한 사이드뷰 및 회원의 아이디 노출 제한 정보

비로그인에 대한 사이드뷰 및 회원의 아이디 노출 제한

본문

로그인하지 않은 회원에 대하여 사이드뷰와 title로 표시되어 회원의 아이디가 노출는 부분을 수정한 사항입니다.

 $g4/lib/common.lib.php 파일에 아래와 같이 일부 수정하시면 됩니다.


// 회원 레이어
function get_sideview($mb_id, $name="", $email="", $homepage="")
{
    global $config;
    global $g4;
 global $member;

    $email = base64_encode($email);
    $homepage = set_http($homepage);

    $name = preg_replace("/\'/", "", $name);
    $name = preg_replace("/\'/", "", $name);
    $name = preg_replace("/\"/", """, $name);
    $title_name = $name;

    if ($mb_id) {
        $tmp_name = "<span class='member'>$name</span>";

        if ($config['cf_use_member_icon']) {
            $mb_dir = substr($mb_id,0,2);
            $icon_file = "$g4[path]/data/member/$mb_dir/$mb_id.gif";

            //if (file_exists($icon_file) && is_file($icon_file)) {
            if (file_exists($icon_file)) {
                //$size = getimagesize($icon_file);
                //$width = $size[0];
                //$height = $size[1];
                $width = $config['cf_member_icon_width'];
                $height = $config['cf_member_icon_height'];
                $tmp_name = "<img src='$icon_file' width='$width' height='$height' align='absmiddle' border='0'>";

                if ($config['cf_use_member_icon'] == 2) // 회원아이콘+이름
                    $tmp_name = $tmp_name . " <span class='member'>$name</span>";
            }
        }
        $title_mb_id = "[$mb_id]";
    } else {
        $tmp_name = "<span class='guest'>$name</span>";
        $title_mb_id = "[비회원]";
    }
//로그인 회원만 사이드뷰가 보이고, 나머지의 경우 닉네임이나 이름만 보이도록
    if ($member['mb_id']) {
      return "<a href=\"javascript:;\" onClick=\"showSideView(this, '$mb_id', '$name', '$email', '$homepage');\" title=\"{$title_mb_id}{$title_name}\">$tmp_name</a>";
    } else {
      return "$tmp_name";
    }
}

추천
2

댓글 10개

아랫부분이 스크립트라 정상적으로 보이지 않네요. 그래서 다시 수정했는데, 확인해 주세요.

//로그인 회원만 사이드뷰가 보이고, 나머지의 경우 닉네임이나 이름만 보이도록
    if ($member['mb_id']) {
      return "<a href=\"javascript:;\" onClick=\"showSideView(this, '$mb_id', '$name', '$email', '$homepage');\" title=\"{$title_mb_id}{$title_name}\">$tmp_name</a>";
    } else {
      return "$tmp_name";
    }
}
그 줄 바로 아래에 다음의 코드가 있어요.
$icon_file = "$g4[path]/data/member/$mb_dir/$mb_id.gif";
위 코드에서 보시면 아시겠지만, 회원 아이디 2자리를 회원의 아이콘 디렉토리로 사용하고 있습니다.
위에 소스 적용이 안되서
저같은 경우
이렇게 적용하니 되네요

//로그인 회원만 사이드뷰가 보이고, 나머지의 경우 닉네임이나 이름만 보이도록

$member = get_member($_SESSION['ss_mb_id']);

    if ($member) {
    return "<a href=\"javascript:;\" onClick=\"showSideView(this, '$mb_id', '$name', '$email', '$homepage');\" title=\"{$title_mb_id}{$title_name}\">$tmp_name</a>";
    } else {
    return "$tmp_name";
    }
}
아마도 안되는 이유는 함수가 시작되는 부분 중에서 member에 대한 변수값이 글로벌로 정의되지 않아서 일 것 같아요.
function get_sideview($mb_id, $name="", $email="", $homepage="")
{
    global $config;
    global $g4;
    global $member;
...
...
최근에 알게되었는데 비회원도 그누보드 회원 아이디를 가입하지 않고 URL로 알수가 있어서 답답해서 지울려고 하다가 좋은 팁 찾았네요 감사합니다
전체 3,309 |RSS
그누4 팁자료실 내용 검색

회원로그인

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