회원권한(레벨)명 설정 > 그누4 팁자료실

그누4 팁자료실

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

회원권한(레벨)명 설정 정보

회원권한(레벨)명 설정

첨부파일

memberGroup.zip (18.0K) 774회 다운로드 2006-08-15 17:07:42

본문

안녕하세요. 킴스보드을 지금까지 하다가 그누보드에 온지를 얼마 안되었습니다.
회원그룹이 권한으로 설 정으로 묶여져 있고 보기가 안좋아서 인터페이스를 약간 수정해보았습니다.
우선 sql 으로 디비 테이블을 하나 추가했습니다.
# # 테이블 구조 `g4_member_group`
# CREATE TABLE `g4_member_group` (
`gm_no` int(8) NOT NULL auto_increment,
`gm_id` char(2) NOT NULL default '',
`gm_name` varchar(255) NOT NULL default '',
PRIMARY KEY (`gm_no`) )
TYPE=MyISAM AUTO_INCREMENT=11 ;
# # 테이블의 덤프 데이터 `g4_member_group` #
INSERT INTO `g4_member_group` (`gm_no`, `gm_id`, `gm_name`) VALUES (1, '1', '비회원');
INSERT INTO `g4_member_group` (`gm_no`, `gm_id`, `gm_name`) VALUES (2, '2', '정회원');
INSERT INTO `g4_member_group` (`gm_no`, `gm_id`, `gm_name`) VALUES (3, '3', '골든회원');
INSERT INTO `g4_member_group` (`gm_no`, `gm_id`, `gm_name`) VALUES (4, '4', '실버회원');
INSERT INTO `g4_member_group` (`gm_no`, `gm_id`, `gm_name`) VALUES (5, '5', '');
INSERT INTO `g4_member_group` (`gm_no`, `gm_id`, `gm_name`) VALUES (6, '6', '');
INSERT INTO `g4_member_group` (`gm_no`, `gm_id`, `gm_name`) VALUES (7, '7', '');
INSERT INTO `g4_member_group` (`gm_no`, `gm_id`, `gm_name`) VALUES (8, '8', '');
INSERT INTO `g4_member_group` (`gm_no`, `gm_id`, `gm_name`) VALUES (9, '9', '');
INSERT INTO `g4_member_group` (`gm_no`, `gm_id`, `gm_name`) VALUES (10, '10', '관리자');
그리고 관리자에 메뉴를 하나 추가 했습니다. <?
$menu["menu200"] = array (
    array("200000", "회원관리", ""),
    array("200100", "회원관리", "$g4[admin_path]/member_list.php"),
    array("200200", "포인트관리", "$g4[admin_path]/point_list.php"),
    array("200300", "회원메일발송", "$g4[admin_path]/mail_list.php"),
    array("200400", "회원권한명관리", "$g4[admin_path]/memberGroup_list.php"), <!-- 새로추가 -->
    array("-"),
    array("200800", "접속자현황",
    "$g4[admin_path]/visit_list.php"),
    array("-"), array("200900", "투표관리", "$g4[admin_path]/poll_list.php") );

./adm/admin.js
function member_group_update(str, uid,type)
{
 var f = document.fmemberG_list;

 var orign_group = f.elements["groupName_["+type+"]"].value;

 if (orign_group != str)
 {
  if (!confirm('\n이미 회원이 가입된 그룹의 명칭을 임의로 변경할 경우           \n\n해당그룹의 회원들에게 혼란을 줄 수 있습니다.\n\n그래도 그룹명칭을 변경하시겠습니까?               \n'))
  {
   return false;
  }
 }
 else {
  if (!confirm('\n\n정말로 변경 변경하시겠습니까?               \n'))
  {
   return false;
  }
 }

 location.href = "./memberGroup_form_update.php?w=u&gm_no=" + uid + "&gm_name=" + orign_group;

}

- 회원 그룹 개별 수정 컨트롤 자바스크립트 입니다.
./adm/admin.lib.php
// 회원권한을 SELECT 형식으로 얻음
function get_member_level_select($name, $start_id=0, $end_id=10, $selected='', $event='')
{
    global $g4;

    $str = "<select name='$name' $event>";
    for ($i=$start_id; $i<=$end_id; $i++)
    {
   $sql = "select * from g4_member_group where gm_id = '$i'";
   $gmData = sql_fetch_array(sql_query($sql));
        $str .= "<option value='$i'";
        if ($i == $selected)
            $str .= " selected";
        $str .= ">[$i] $gmData[gm_name]</option>";
    }
    $str .= "</select>";
    return $str;
}

추천
7

댓글 47개

admin.menu200.php 7째줄에 
array("200400", "회원권한명관리", "$g4[admin_path]/memberGroup_list.php")    <----- 여기서 G가 대문자라 인식을 못했네요. 파일명에서 membergroup을 memberGroup으로 바꾸면 됩니다
에고 저는 에러가 나여
받은 파일을 폴더에 맞게 올렸는데


현재 에러가 나는 곳은

회원관리에서 아래와 같이
select * from g4_member_group where gm_id = '1'
1146 : Table 'hans4374.g4_member_group' doesn't exist

error file : /gnuboard4/adm/member_list.php


회원권한명 관리에서
select * from g4_member_group order by gm_no asc

1146 : Table 'hans4374.g4_member_group' doesn't exist

error file : /gnuboard4/adm/memberGroup_list.php

아래와 같이 에러가 나여

^^
네에 그렇군여
테이블을 어케 추가하는지 모르기에 원래대로 돌아가는게 나을것 같아서
원래대로 돌아갑니다.
다음에 제가 php에 대해서 더 알게되면 그때에나 ㅎㅎ
감사합니다
민우주님 죄송해요.. 밥먹고 사는게 힘들어서 ㅋ 외부로그인 할때

 outlogin.skin.2.php 에서 닉네임 아래에 넣어주시면 됩니다.

<?
$sql = "select * from g4_member_group where gm_id ='$member[mb_level]'";
$mbGroup = sql_fetch_array(sql_query($sql));
?>
Lev. <?=$mbGroup[gm_id]?> <?=$mbGroup[gm_name]?>
선택은 되는데 수정이 안됩니다. 어디가 문제죠..?
줄 : 305
문자:1
오류:개체가 필요합니다.
코드:0
URL:http://www.xxx.com/xxx/xxx/memberGroup_list.php
줄 305 면 모죠? 며느리도 모릅니다. 제가 불때 자바스크립트 오류인거 같은데 현재 버그는 발견되지 않았네요.. 왜냐면 제가 지금도 이걸 쓰고 있거든요.. 자세한 사항을 알고 싶네요 ^^
mysqladmin 실행시키고 sql 에서 밑에 내용을 넣어서 쿼리 하시면 됩니다.

CREATE TABLE `g4_member_group` (
  `gm_no` int(8) NOT NULL auto_increment,
  `gm_id` char(2) NOT NULL default '',
  `gm_name` varchar(255) NOT NULL default '',
  PRIMARY KEY  (`gm_no`)
) TYPE=MyISAM;
4.21.01에 적용을 다시 하다가 보니 common.lib.php에 아래 함수가 기본으로 추가 되었네요. ^^
function get_group($gr_id)
{
    global $g4;

    return sql_fetch(" select * from $g4[group_table] where gr_id = '$gr_id' ");
}
회원권한명관리는 정상으로 동작하는데

회원관리에서 권한 콤보박스에 권한 1, 2, 3.....만나타나고 권한명(손님, 준회원등...이

안나타나는것은 무엇이 잘못된걸까요?
유용한스킨 감사합니다.

# common.lib.php 에서 다음 내용만 추가된 거겠죠.

// 회원 권한명 정보를 얻는다.
function get_member_group_name($gm_no, $fields='*')
{
    global $g4;

    return sql_fetch(" select $fields from g4_member_group where gm_no = TRIM('$gm_no') ");
}
전체 15 |RSS
그누4 팁자료실 내용 검색

회원로그인

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