회원권한 변경 일자 표시할려면?

회원권한 변경 일자 표시할려면?

QA

회원권한 변경 일자 표시할려면?

답변 3

본문

안녕하세요~

회원권한을 등급별로 구분해서 수동으로 승인해주려고 합니다.

 

관리자 페이지의 회원관리에 최종접속 / 가입일이 나오는데...

 

관리자가 권한을 바꿔주면 바뀐 날짜가 나오게 할수있나요?

가입일이나 최종접속일처럼, 20-04-13 형식으로 나오면 되는데요..

 

관리자페이지 회원관리에도 보여지고, 해당회원이 로그인했을때도 마이페이지에도 보여지게 하려합니다.

 

검색해봐도 관련팁을 못찾겠는데... 아시는 분 계시면 도움부탁드립니다~

 

 

 

 

 

이 질문에 댓글 쓰기 :

답변 3

필요하신 기능을 먼저 정리하셔야될것 같습니다.

회원권한이 게시판 권한인지, 관리자 권한인지, 단순하게 등급변경시점인지 모호하네요

 

1. 등급 승인 방식을 어떻게 할것인가?

ex) 게시판 신청 -> 관리자 확인 -> 승인

2. 관리자 페이지에 표시방식

ex) 최종 승인된 년/월/일

3. 관리자, 게시판 어느 영역인가?

4. 회원정보에는 어떻게 표기할것인가?

ex) 권한이 있는 전부 표기 or 권한이 필요한 영역 표기후 획득한 권한 강조

 

1. 관리자 권한입니다.
관리자가 확인후 승인(권한 업)하는 로직이며, 관리자페이지 회원정보쪽하구 회원로그인시 마이페이지에서 본인의 등급(권한)과 함께 날짜가 보여지면 됩니다.

즉, 관리자가 승인한 날짜가 관리자/회원 마이페이지 에 보여지면 됩니다.

2. 별도 표시방식은 없습니다.
3. 관리자 회원관리/회원 마이페이지에 권한변경된 날짜가 보여지면 됩니다.
4. 가입일이나 최종접속일처럼, 20-04-13 날짜 표기 방식만 알려주시면 해당 코드 예: <?php echo $ 권한변경코드 ?>를  넣어서 보여줄 예정입니다.


ps:  예: <?php echo $ 권한변경코드 ?> 이런 방식으로 권한변경된 날짜만 추출 할수 있는지 궁금합니다. 가능하면 좋겠고...
아니면 어떤 방법이 쉬운방법인지 알려주시면 좋겠습니다.~

아래 파일들이 저장에 관여합니다.
1. 관리자 > 회원관리 페이지에서 선택수정 저장
https://github.com/gnuboard/gnuboard5/blob/6cc2bfdd50ff82c45372a391ebf65ff03d9f34a6/adm/member_list_update.php#L79
2. 관리자 > 회원관리 > 수정 회원 수정 페이지
 https://github.com/gnuboard/gnuboard5/blob/6cc2bfdd50ff82c45372a391ebf65ff03d9f34a6/adm/member_form.php#L445
3. 2번 회원 페이지 수정 저장
https://github.com/gnuboard/gnuboard5/blob/6cc2bfdd50ff82c45372a391ebf65ff03d9f34a6/adm/member_form_update.php#L239
4-1. 회원 정보 수정시 저장
https://github.com/gnuboard/gnuboard5/blob/6cc2bfdd50ff82c45372a391ebf65ff03d9f34a6/bbs/register_form_update.php#L77
4-2. 스킨기능을 이용해서 회원정보 저장시 관여
https://github.com/gnuboard/gnuboard5/blob/6cc2bfdd50ff82c45372a391ebf65ff03d9f34a6/bbs/register_form_update.php#L158

질문자의 의도와 같이 등급을 변경하면 자동으로 처리되게 만들려면 위에 언급한 파일들을 전부 또는 일부를 수정해야됩니다.
플라이님이 언급하신 칼럼추가하는 방법을 추천 드리지만, 이해를 돕기 위해서 비교적 간단하게 여분 필드를 이용해 설명 드리겠습니다.
그리고 자동 처리를 하기위해서는 고려해야될 상황(현재등급과 변경입력된 등급 비교 등)이 많아서... 제외하고 개략적인 것만 설명하겠습니다.


# 날짜 저장
관리자 > 회원관리 > 수정 회원 수정 페이지의 아래 쪽 부분에 보시면 여분 필드 1 ~ 10이 있습니다.
편의상 여분 필드 1번을 사용한다고 전제하겠습니다.
여분 필드 1에 20200414 or 2020-04-14 등 날짜 및 시간 등 필요한 형태로 저장합니다.
Hint. 위쪽에 탈퇴일을 오늘로 지정을 체크하면 날짜가 자동 입력되는데 이것을 참고해서 2번파일에서 수정하면...

4번파일의 여분필드 처리 개입
https://github.com/gnuboard/gnuboard5/blob/6cc2bfdd50ff82c45372a391ebf65ff03d9f34a6/bbs/register_form_update.php#L55
링크의 행을 보시게 되면 회원도 여분필드에 관여할수 있게 되어 있습니다.
이게 왜 문제인가?
1. 여분필드의 값이 넘어 오지 않는다면 해당값 초기화 되는 문제
2. 1의 연장에서 회원도 변조를 할 수 있는 문제
따라서, 회원은 수정권한이 없으므로 4-2에서 언급된 스킨파일로 처리
테마 및 관리자에서 지정한 멤버스킨폴더에 register_form_update.head.skin.php 파일을 생성후 아래코드 추가


<?php
$mb_1 = $member['mb_1'];

Hint. 칼럼추가로 구현시에는 4번파일 처리 불필요

# 날짜 표시는 관리자 페이지에서는 $mb 변수 이용 회원페이지 부분에서는 $member 변수를 이용하여 적절하게 표시해주시면 됩니다.

필요하신 부분은 회원가입일에 데이터를 수정해서 반영해 주길 원하시는건지 아니면 기존 데이터는 그대로 두고 별도 컬럼을 추가해서 반영해서 하시는 부분은 레벨 수정시 추가한 컬럼에 해당 날짜를 변경해서 반영해 준것을 표현해 주시면 될듯 합니다.

회원가입일과 상관없이 레벨권한 수정시 그 수정날짜만 표기되면 됩니다.
칼럼추가 변경반영이란 말이 무슨말씀인지 모르겠어요?
별도로 작업이 필요하다는건가요? 관련 소스나 정보가 있으시면 알려주시면 고맙겠습니다. TT

따로 필드가 없어서 여분필드를 사용하시거나 추가를 하셔야 합니다.

 

만역 여분필드를 하신다면 사용자 회원정보 쪽도 수정을 하셔야합니다.

 

값 변동하고 하시는건 관리자쪽 회원관리를 살펴보시면 참고되실거 같습니다.

<tr>
        <th scope="row">회원가입일</th>
        <td><?php echo $mb['mb_datetime'] ?></td>
        <th scope="row">최근접속일</th>
        <td><?php echo $mb['mb_today_login'] ?></td>
    </tr>

이런식으로 되어있는데... 권한 변경날짜 소스는 없나요?
따로 입력하거나 하게끔 만들어야 하는건지요?

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 22
© SIRSOFT
현재 페이지 제일 처음으로