예감

[디자이너의 초보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개

예감님 강좌를 한꺼번에 다 보려니 헷갈리네요 강좌는 이해하기 쉬운데 ㅋㅋ차근차근봐야게사요 잘보고갑니다.
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

+
제목 글쓴이 날짜 조회
14년 전 조회 2,196
14년 전 조회 3,054
14년 전 조회 2,143
14년 전 조회 1,568
14년 전 조회 1,972
14년 전 조회 2,408
14년 전 조회 1,633
14년 전 조회 2,136
14년 전 조회 2,906
14년 전 조회 2,037
14년 전 조회 1,892
14년 전 조회 1,924
14년 전 조회 1,585
14년 전 조회 2,245
14년 전 조회 2,107
14년 전 조회 1,565
14년 전 조회 1,939
14년 전 조회 5,026
14년 전 조회 2,044
14년 전 조회 3,748
14년 전 조회 1,972
14년 전 조회 1,993
14년 전 조회 1,765
14년 전 조회 1,612
14년 전 조회 2,596
14년 전 조회 1,642
14년 전 조회 1,562
14년 전 조회 1,878
14년 전 조회 1,717
14년 전 조회 1,944
14년 전 조회 1,705
14년 전 조회 2,764
14년 전 조회 3,205
14년 전 조회 2,040
14년 전 조회 2,049
14년 전 조회 1,779
14년 전 조회 3,847
14년 전 조회 1,830
14년 전 조회 1,565
14년 전 조회 2,390
14년 전 조회 2,784
14년 전 조회 1,760
14년 전 조회 2,320
14년 전 조회 2,311
14년 전 조회 2,377
14년 전 조회 2,513
14년 전 조회 2,167
14년 전 조회 9,652
14년 전 조회 2,273
14년 전 조회 2,547
14년 전 조회 1,678
14년 전 조회 1,628
14년 전 조회 1,732
14년 전 조회 2,098
14년 전 조회 3,130
14년 전 조회 1,657
14년 전 조회 2,619
14년 전 조회 2,880
14년 전 조회 1,977
14년 전 조회 1,912
14년 전 조회 1,495
14년 전 조회 2,060
14년 전 조회 1,946
14년 전 조회 1,828
14년 전 조회 1,723
14년 전 조회 1,777
14년 전 조회 2,139
14년 전 조회 2,957
14년 전 조회 2,033
14년 전 조회 1,515
14년 전 조회 1.1만
14년 전 조회 1,814
14년 전 조회 1,690
14년 전 조회 2,253
14년 전 조회 3,371
14년 전 조회 2,171
14년 전 조회 1,879
14년 전 조회 1,664
14년 전 조회 2,548
14년 전 조회 1,829
14년 전 조회 3,212
14년 전 조회 1,647
14년 전 조회 1,674
14년 전 조회 1,777
14년 전 조회 2,498
14년 전 조회 1,648
14년 전 조회 3,122
14년 전 조회 1,455
14년 전 조회 4,063
14년 전 조회 4,228
14년 전 조회 4,148
14년 전 조회 3,952
14년 전 조회 1,651
14년 전 조회 1,582
14년 전 조회 2,100
14년 전 조회 2,357
14년 전 조회 1,556
14년 전 조회 1,630
14년 전 조회 1,556
14년 전 조회 5,620