[디자이너의 초보PHP강의 06] 파라미터 값 사용하기 정보
PHP [디자이너의 초보PHP강의 06] 파라미터 값 사용하기
본문
디자이너인 제가..프로그램 손을 대면서...느끼는 부분들을 정리한거라....표현이 틀릴수도 있음을 양해 부탁드려요..
게시판을 보시면
이런식으로 마지막 ? 다음 부분이 있습니다. 파라미터 값이라고 부르는데요...변수라고 생각하시면 됩니다.
변수 $bo_table 이 pg_php 라는 값을 가진다는 것이죠
그 다음을 보시면
추가적으로 값을 더 가지고 싶으면 &로 구분합니다. $skin 값이 notice를 가지는 것입니다.
그렇다면 파라미터 값은 왜 쓸까요?
잘 보시면 알겠지만..현재 그누보드에서는 모든 게시판을 /bbs/write.php 페이지에서 불러옵니다. (글쓰기의 경우)
게시판이 10개가 있다하더라고 /bbs/write.php 파일에서 불러오죠...그리고 파라미터 $bo_table 로 구분을 하여 게시판을 불러오는 것입니다.
$bo_table 값에 따라서 그 값에 설정된 게시판의 스킨을 불러오고...DB에서 데이터를 가져옵니다.
/bbs/write.php 페이지에서 $bo_table 값에 따라서 다르게 표현되도록 구분하는 것이죠...
페이지에서 표현을 할때에는
<?php
if($bo_table=='pg_php')
echo "PHP게시판";
?>
이런식으로 bo_table 앞에 $를 붙여줍니다.
파라미터를 쓰면 여러가지로 표현이 가능하죠..
만일 1개의 게시판을 5종류로 쓸려고 했을때(카테고리 말고...스킨 자체를 다르게 표현하고 싶을 경우)
파라미터값을 이용하여 링크를 걸어주어 값을 보내주면 됩니다.
이런식으로 값을 보내고..
/bbs/list.php 파일에서 스킨파일을 불러오는 부분을 수정하여 사용하시면 됩니다
<?php
if($skin){ //$skin 값이 있을때는 이곳으로
if($skin =='notice')
include_once("/skin/board/notice/list.skin.php");
else if($skin =='qna')
include_once("/skin/board/qna/list.skin.php");
else if($skin =='faq')
include_once("skin/board/faq/list.skin.php");
}else{ //$skin 값이 없을 때
include_once("$board_skin_path/list.skin.php");
}
?>
이런식으로 한개의 게시판으로 여러개 게시판을 사용하는 것처럼 활용할 수 있습니다.
또한 글쓰기의 경우 파라미터 값을 이용하여 DB입력할때 다르게 값을 넣기도 합니다.
다만 주의 할 점은 글쓰기의 경우 그냥 주소줄에 파라미터값을 넣어서 보내면...
글쓰기 페이지를 거치지 않고 다이렉트로
값을 넘겨줄수 있기 때문에
글쓰기에서는 꼭
<input type=hidden name=wr_id value="<?=$wr_id?>">
이런식으로 hidden 값으러 넘겨서 write_update.php 페이지에서
$_POST[wr_id] 값으로 받는게 안전합니다.
많이 사용해 보시면 다양하게 활용할수 있습니다.
검색에도 이 파라미터값을 이용하여 처리합니다.
자유게시판에서 php로 검색하면 상단 주소창이
이런식으로 변합니다.
처음보다 많은 파라미터 값이 생겼죠??
$sca는 공백이죠?
$sfl은 검색되는 필드 명이고 : 보이는 것은 글 제목과 내용에서 검색
$stx는 검색단어 : php
$sop 는 검색방법 or와 and를 구분해 주는 것이죠
이것을 DB에서 불러올때 조건문에 들어가도록 해서...검색단어가 포함된 게시물만 불러오도록 하는 것입니다.
알고보니 쉽죠?
어느정도 익숙해지면 마음대로 검색 방법을 설정해서 만들수 있을 것입니다.
추천
2
2
댓글 1개
예감님 강좌를 한꺼번에 다 보려니 헷갈리네요 강좌는 이해하기 쉬운데 ㅋㅋ차근차근봐야게사요 잘보고갑니다.