웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
(회원 정보) 작성 글 수, 댓글 수를 보여주기 (#4, 2007-10-13)
2007.10.06 15:01
학습 목표
1. 회원 정보에서 글, 댓글, 첨부 갯수를 보여주기
2. 회원 목록 관리자 페이지에서 글, 댓글 작성 갯수를 보여주기
작동 원리
document, comment 테이블을 member_srl로 쿼리를 한다.
이때 쿼리 XML 파일을 만들어 줘야 함
#4. 파일 첨부 수를 구하는 소스 변경
작업준비
※ XML 파일은 어디에 넣어도 상관이 없습니다만 다른 용도로 사용을 하기 위해 각 모듈의 쿼리 폴더에 복사합니다.
아래 파일을 modules\comment\queries 폴더에 복사합니다.
getMemberCommentCount.xml
아래 파일을 modules\document\queries 폴더에 복사합니다.
getMemberDocumentCount.xml
getMemberUploadedCount.xml
1. 회원 정보 페이지 작업하기
modules\member\skins\스킨 폴더의 member_info.html 파일을 편집합니다.
70번대 줄에 아래 소스를 추가합니다.
변수 대신 직접 한글을 사용해도 되지만 언어별로 나타내려면 lang 파일을 편집합니다.
modules\member\lang 폴더의 ko.lang.php 파일을 편집합니다.
아래 소스를 적당한 곳에 추가합니다.
<tbody></tbody> 사이에 아래 소스를 삽입합니다.
※ 소스를 참고하여 포인트 모듈의 회원 목록에서도 적용할 수 있습니다.
설문조사 (1. 회원 정보)
1. 회원 정보에서 글, 댓글, 첨부 갯수를 보여주기
2. 회원 목록 관리자 페이지에서 글, 댓글 작성 갯수를 보여주기
작동 원리
document, comment 테이블을 member_srl로 쿼리를 한다.
이때 쿼리 XML 파일을 만들어 줘야 함
#4. 파일 첨부 수를 구하는 소스 변경
작업준비
※ XML 파일은 어디에 넣어도 상관이 없습니다만 다른 용도로 사용을 하기 위해 각 모듈의 쿼리 폴더에 복사합니다.
아래 파일을 modules\comment\queries 폴더에 복사합니다.
getMemberCommentCount.xml
아래 파일을 modules\document\queries 폴더에 복사합니다.
getMemberDocumentCount.xml
getMemberUploadedCount.xml
1. 회원 정보 페이지 작업하기
modules\member\skins\스킨 폴더의 member_info.html 파일을 편집합니다.
70번대 줄에 아래 소스를 추가합니다.
{@
$obj->member_srl = $member_info->member_srl;
$output_document_count = executeQuery("document.getMemberDocumentCount",$obj);
$output_comment_count = executeQuery("comment.getMemberCommentCount",$obj);
$output_attach_count = executeQuery("document.getMemberUploadedCount",$obj);
}
<tr>
<th scope="row">{$lang->count_document}</th>
<td>{$output_document_count->data->count}</td>
</tr>
<tr>
<th scope="row">{$lang->count_comment}</th>
<td>{$output_comment_count->data->count}</td>
</tr>
<tr>
<th scope="row">{$lang->count_attach}</th>
<td>{$output_attach_count->data->count}</td>
</tr>
$obj->member_srl = $member_info->member_srl;
$output_document_count = executeQuery("document.getMemberDocumentCount",$obj);
$output_comment_count = executeQuery("comment.getMemberCommentCount",$obj);
}
<tr>
<th scope="row">{$lang->count_document}</th>
<td>{$output_document_count->data->count}</td>
</tr>
<tr>
<th scope="row">{$lang->count_comment}</th>
<td>{$output_comment_count->data->count}</td>
</tr>
<tr>
<th scope="row">{$lang->count_attach}</th>
<td>{$output_attach_count->data->count}</td>
</tr>
변수 대신 직접 한글을 사용해도 되지만 언어별로 나타내려면 lang 파일을 편집합니다.
modules\member\lang 폴더의 ko.lang.php 파일을 편집합니다.
아래 소스를 적당한 곳에 추가합니다.
$lang->count_document = '글 수';
$lang->count_comment = '댓글 수';
$lang->count_comment = '댓글 수';
2. 회원 목록 관리 페이지 작업하기
member 모듈의 member.admin.view.php 파일을 편집합니다.
dispMemberAdminList 함수의 중간에 아래 소스 중 굵은 부분을 삽입합니다.
function dispMemberAdminList() {
// member model 객체 생성후 목록을 구해옴
$oMemberModel = &getAdminModel('member');
$output = $oMemberModel->getMemberList();
foreach($output->data as $key => $value) {
$output_document_count = executeQuery("document.getMemberDocumentCount", $value);
$output_comment_count = executeQuery("comment.getMemberCommentCount", $value);
$output->data[$key]->document_count = $output_document_count->data->count;
$output->data[$key]->comment_count = $output_comment_count->data->count;
}
// 템플릿에 쓰기 위해서 context::set
Context::set('total_count', $output->total_count);
Context::set('total_page', $output->total_page);
Context::set('page', $output->page);
Context::set('member_list', $output->data);
Context::set('page_navigation', $output->page_navigation);
// 템플릿 파일 지정
$this->setTemplateFile('member_list');
}
// member model 객체 생성후 목록을 구해옴
$oMemberModel = &getAdminModel('member');
$output = $oMemberModel->getMemberList();
foreach($output->data as $key => $value) {
$output_document_count = executeQuery("document.getMemberDocumentCount", $value);
$output_comment_count = executeQuery("comment.getMemberCommentCount", $value);
$output->data[$key]->document_count = $output_document_count->data->count;
$output->data[$key]->comment_count = $output_comment_count->data->count;
}
// 템플릿에 쓰기 위해서 context::set
Context::set('total_count', $output->total_count);
Context::set('total_page', $output->total_page);
Context::set('page', $output->page);
Context::set('member_list', $output->data);
Context::set('page_navigation', $output->page_navigation);
// 템플릿 파일 지정
$this->setTemplateFile('member_list');
}
modules\member\tpl 폴더에서 member_list.html 파일을 편집합니다.
<thead></thead> 사이에 아래 소스를 삽입하고,
<th scope="col">Document</th>
<th scope="col">Comment</th>
<th scope="col">Comment</th>
<tbody></tbody> 사이에 아래 소스를 삽입합니다.
<td class="tahoma">{$val->document_count}</td>
<td class="tahoma">{$val->comment_count}</td>
<td class="tahoma">{$val->comment_count}</td>
※ 소스를 참고하여 포인트 모듈의 회원 목록에서도 적용할 수 있습니다.
설문조사 (1. 회원 정보)
태그 연관 글
- [2017/03/02] 묻고답하기 관리자 회원 목록에서 설명이 보이게 하는 방법 문의 드립니다. *2
- [2016/12/13] 묻고답하기 회원목록보기 가능할까요? *2
- [2014/04/09] 묻고답하기 닉네임과 이름 가입시 회원정보 변경시 질문입니다. *2
- [2012/05/17] 묻고답하기 회원정보 팝업창이 안나타나게 하는 방법좀 알려주세요. *1
- [2011/09/01] 묻고답하기 회원DB이전시 비밀번호를 XE로 코딩할수 있나요? *2
댓글 7
제목 | 글쓴이 | 날짜 |
---|---|---|
(게시판) 목록에 확장 변수를 출력하기 [18] | Simulz | 2007.09.08 |
메인 페이지 링크 www. 주소 표시, 로그인 링크 문제.... [5] | 마덴나 | 2007.09.08 |
메뉴와 연결된 xe의 page에 iframe을 사용해서 제로보드4 게시판을 불러들였습니다 [2] | 바람처럼.. | 2007.09.14 |
2차,3차 메뉴가 좌측으로 일렬로 되어있어 구분이 잘 안됩니다,이럴 때~ [7] | *제트* | 2007.09.16 |
정사각형 썸네일은 안녕~ 직사각형 썸네일을 만들어보자 [8] | 매니안 | 2007.09.19 |
새 공지창 띄우기 [22] | *제트* | 2007.09.20 |
(포인트 모듈) 추가 정보 출력 [8] | Simulz | 2007.09.20 |
공지창 소스 [2] | 열린 공간 | 2007.09.21 |
<수정>사이트 메신저 회원 연동해서 사용하기.... [3] | 녀석참 | 2007.09.22 |
제로보드 XE 설치후에 제대로 작동 안하는 원인은... | 독도2005 | 2007.09.22 |
(모듈 설정) 모듈 목록을 추가하여 설정을 쉽고 빠르게 #2, 2007-09-28 [3] | Simulz | 2007.09.23 |
로고에 플래시파일 사용하기 [2] | 팔공산 | 2007.09.26 |
회원가입 약관 관련. [2] | rickey | 2007.09.28 |
페이지에 설문 조사 넣기 [2] | 지허 | 2007.10.01 |
iframe사용시 세로길이 자동 조정되게 하기 [7] | 팔공산 | 2007.10.04 |
xe 폴더를 어딘가로 이전했을 때 로그인이 안되는 경우... [2] | preware | 2007.10.05 |
(회원 정보) 작성 글 수, 댓글 수를 보여주기 (#4, 2007-10-13) [7] | Simulz | 2007.10.06 |
댓글 등록시 하드에 있는 이미지를 쉽게 웹에 링크시키는 프로그램 [6] | 팔공산 | 2007.10.07 |
"회원 추가" 를 "회원 가입" 으로 .. [9] | 디키스 | 2007.10.12 |
상단에 로그인 회원가입 등 메뉴 넣기 (id/pw찾기 추가) [7] | mireu | 2007.10.16 |