테스트 사이트 - 개발 중인 베타 버전입니다

[디자이너의 초보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에서 불러올때 조건문에 들어가도록 해서...검색단어가 포함된 게시물만 불러오도록 하는 것입니다.
 
알고보니 쉽죠?
어느정도 익숙해지면 마음대로 검색 방법을 설정해서 만들수 있을 것입니다.

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 1개

예감님 강좌를 한꺼번에 다 보려니 헷갈리네요 강좌는 이해하기 쉬운데 ㅋㅋ차근차근봐야게사요 잘보고갑니다.

게시글 목록

번호 제목
15661
15657
3688
15650
15648
15647
15642
3676
29958
15639
15635
15632
3672
15630
15629
15628
15625
15624
15621
15613
3669
29953
15605
15604
15602
15601
15600
3666
3663
15596
29952
3662
15592
3655
29944
3648
15591
15589
29937
3644
3641
15586
15585
29936
15583
15578
15575
15572
15567
15563
24338
15560
15556
26168
29935
15552
3626
3617
3605
3596
15549
15547
15546
29933
26167
26166
26165
26164
26163
26161
26160
26152
26149
26148
26147
26146
26145
26141
26138
26134
15539
3590
29931
3583
3581
3578
15537
15535
29926
15524
29920
3560
15521
3557
29919
15517
29914
15506
29910
29909