웹마스터 팁

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

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

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

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" />
이렇게 바꿉니다.

이렇게 해 두면 올라오는 모든 게시물이 비밀글 & 다른 비밀번호를 가지게 되어
혹시라도 있을지 지 모르는 상황에서도 어느정도 게시물 내용을 보호할 수 있게 됩니다.
제목 글쓴이 날짜
제한된 외국 호스팅 환경에 맞추어 쓰기..... [5] Falls Too Fast 2007.11.20
Ms 워드로 게시판 글쓰기 [1] file 더하기나무 2007.12.25
상담/신청 (쓰기만 가능한 게시판) 만들기 [10] mmx900 2008.03.20
windows Live writer로 게시글 쓰기 [3] file tindrum 2008.04.29
게시판(블로그)상단에 글쓰기버턴이나 링크넣기 [8] file 팔공산 2008.07.20
상담게시판 바로 글쓰기 이동하기 팁.. [3] 만쓰별(정만) 2009.02.05
비회원 글쓰기가 되지 않을 경우.. 태쥐 2009.10.01
cafe24에서 쉬운설치 기능을 쓰기위한 ftp 설정법 [19] file 현의느낌 2010.02.01
게시판 목록에서 쓰기 버튼을 관리그룹만 보이도록 하기 [14] 다케루 2010.02.18
textarea 세로 글쓰기 [1] ZipShin 2003.04.15
로딩중 스크립트와 셀렉트창 같이 쓰기 [1] 예뜨락 2005.01.13
나만의 위지윅 웹에디터 만들기 - 글 쓰기에 앞서 [4] file 예뜨락 2008.05.05
교육용 방명록 #2 [글쓰기 폼 작성] [11] zero 2000.07.03
교육용 방명록 #3 [글쓰기 폼에서 넘어온 값을 DB에 입력하기] [5] zero 2000.07.03
[씽크식 PHP] 노프레임에서 "역"으로 인클루드 쓰기. [14] John Sync. 2002.02.24
sleep() 제대루 쓰기... 요것두 [별루 알아도 도움 안되는 팁] [5] sMokaHallo 2002.08.24
[동주아빠] PHP 게시판 - 글쓰기 입력폼(1) FORM 태그의 이해(上) [8] 손병목 2002.12.25
[동주아빠] PHP 게시판 - 글쓰기 입력폼(2) [1] 손병목 2002.12.25
[동주아빠] PHP 게시판 - 글쓰기 입력폼(3) 입력값검사 [5] 손병목 2002.12.25
[동주아빠] PHP 게시판 - 글쓰기 입력 write.php [5] file 손병목 2002.12.25