웹마스터 팁

일반 사용자에게는 쓰기 폼만 보여주고 목록은 관리자만 보게 한다면
무언가를 센청 혹은 제출하는 메뉴를 매우 쉽게 만들 수 있습니다.

게시판 입장에서 보자면
일반 회원 - 쓰기만
관리자 - 모든 기능

이렇게 정리가 되는 것이죠.
제로보드 기본 스킨을 가지고 구현해 보겠습니다.

1. 쓰기 페이지의 주소
신청 게시판의 mid가 qna라면, 신청 메뉴에
/zbxe/?mid=qna&act=dispBoardWrite
이렇게 링크를 걸면 됩니다.

2. 권한 설정
게시판 권한 설정에서 쓰기를 제외한 모든 권한을 관리자에게만 줍니다.
이렇게 하지 않으면 위의 게시판의 경우 일반 사용자가
/zbxe/qna 이렇게 접속해서 다 볼 수도 있겠죠.

3. 스킨 수정 1 - 글 작성 후 안내 메시지
이제 일반 사용자가 글을 작성하면
쓰기 버튼을 누른 직후 어떠한 메시지도 없이
'권한이 없습니다'라는 메시지를 접하게 될 것입니다.
오류가 있거나 매우 불친절한 홈페이지라고 생각하게 되겠죠.
수정해봅시다.

기본 스킨의 board.js 파일을 열면 맨 먼저 나오는 함수가 completeDocumentInserted()입니다.
이 함수 마지막 줄에 location.href = url; 이라고 나오는 부분을 주석 처리합니다.
그리고 이렇게 써넣습니다.

//location.href = url;

alert('신청이 완료되었습니다.');
completeReload(ret_obj);

이제 사용자가 쓰기 버튼을 누르면 위에 적은 안내 문구가 뜬 후 다시 쓰기 페이지로 돌아오게 될 것입니다.


4. 스킨 수정 2 - 비밀번호 제거
이런 일회성 폼에는 비밀번호가 필요 없습니다.
제거하는 방법은 두가지가 있는데,
하나는 그냥 write_form.html에서 비밀번호 필드를 삭제하고
filter/insert.xml에서 패스워드 항목을 찾아 required="true"라는 부분을 제거하는 것입니다.
하지만 이렇게 해서 비밀번호 없는 게시물을 만든다는 게 별로 좋은 발상이 아닌 것 같습니다.
만에 하나 실수로 스킨을 변경한다거나 할 경우 무슨 일이 일어날지 모르기 때문입니다.
그래서 여기서는 다른 방법을 쓰겠습니다.
write_form.html을 열고

<input type="password" name="password" value="" id="userPw" class="userPw inputTypeText" />

이것을

<input type="hidden" name="password" value="{@$time = time()}{$time}" />

이렇게 바꿉니다.
또 is_secret 옵션을 입력받는 부분을 찾아

<input type="hidden" name="is_secret" value="Y" />
이렇게 바꿉니다.

이렇게 해 두면 올라오는 모든 게시물이 비밀글 & 다른 비밀번호를 가지게 되어
혹시라도 있을지 지 모르는 상황에서도 어느정도 게시물 내용을 보호할 수 있게 됩니다.
제목 글쓴이 날짜
XE 모듈/스킨 개발시 사용 가능한 변수 알아내기 [3] 도라란 2011.02.27
z-index 값 설정하기... [2] ForHanbi 2011.03.15
UTF-8 파일을 열면 글자가 깨져요 어떤 에디터를 사용해야 하나요? [2] 최소영329 2009.02.03
문자열 처리 함수 + 파일 처리 함수 [1] 999 2011.02.22
[생초보팁] 레이아웃 스킨 강좌 사이트 [2] HolyJohn 2010.12.29
추천수와 비추천수를 합친 값을 보여주기 lol €:) 2011.03.11
사진링크가 깨져서 엉망이네요 [1] 김성회 2011.03.11
jQuery 강의 #2. 셀렉터에 스타일을 적용해보자. 서기 2011.03.08
페이지 수정시 팝업창 높이 조절... [1] 브레인630 2011.03.07
이용자가 댓글을 닉네임으로 검색할순 없나요? [2] gc00 2011.03.04
CSS 사용시 익스플로러 버그 해결하기. [3] NineTail 2007.08.28
[확장변수] 게시물을 새창에서 전체화면으로 보기 [2] file 고진감래 2009.10.09
php5 설정(최적화) fsfsdas 2011.02.20
메뉴 클릭시 알림메시지 띄우기 [1] 도라란 2011.02.27
이미지 삽입후 이미지 위에 노란색 박스 사라지게하는 법 [5] dhseo 2008.05.28
웹페이지에 마우스 따라다니는 예쁜 시계를 넣자 [5] gosoo99 2008.04.08
메뉴에서 채팅방 띄우기 용도로 쓰는 스크립트 코아 코스튬 2011.01.30
XE 검색 속도 향상 팁(확장 변수 검색시) [5] 명드래곤 2011.02.26
[권한이 없습니다] 권한에 따른 다른 메시지 출력하기 [10] [1] 반도체맨 2008.10.03
상담/신청 (쓰기만 가능한 게시판) 만들기 [10] mmx900 2008.03.20