예감

[디자이너의 초보PHP강의 02] 필드 추가시 방법

· 14년 전 · 1308
처음에 저도 이부분이 힘들었습니다. 하지만 원리를 알고 보면 쉽습니다.
필드 추가시에 문제가 되는 부분은 업데이트 할때 에러나는 부분입니다.
 
게시판 리스트와 뷰 부분에서는 따로 손대지 않아도 추가된 필드가 자동으로 불러와집니다.
 
나중에 배우시겠지만 필드를 불러올때 부분적으로 필요한 것만 불러오기도 하고 테이블에 있는 필드를 다 불러오게 하는 방법이 있습니다. 리스트와 뷰 페이지에서는 전체를 다 불러오니...궂이 다른 설정안하셔도 됩니다.
문제는 글쓰기 에서 업데이트 시키는 부분입니다.
 
그누보드의 기본 구조는 공통적으로 사용되는 페이지와 스킨으로 되어 있습니다.
 
게시판을 보면 모두 bbs 폴더에서 write.php 와 board.php로 되어 있습니다.
 
이 파일에는 공통적으로 들어가는 부분들이 적용되어 있고 이 파일에서 스킨파일을 불러와서 스킨마다 다른 설정을 주는 것입니다. 쓰기 페이지는 모두 /bbs/write.php  파일에서 적용된 스킨의 write.skin.php 파일을 불러와서 보여주는 것입니다. 스킨적용은 관리자 > 게시판 관리에서 각각 해줄수 있습니다.
 
일단 필드를 추가하셨다면, 손대야 하는 부분은 딱 한군데 입니다. 스킨의 write_update.skin.php 파일입니다.
기본스킨에서는 저파일이 없을수도 있습니다. 없다면....만들어주시거나 공유하는 스킨들을 보셔서 저파일이 있다면 업로드 해주세요...단, 그 파일에 다른 코드가 있다면 삭제해 주세요...
 
다음에 해줄 부분은 추가된 필드를 글쓸때와 수정할때 적용 되도록 해주는 것입니다.
 
<?
if($w==''){
 $sql = " insert into $write_table
                set wr_bob= '$wr_bob',
                     wr_bob2= '$wr_bob2',
                      wr_bob3= '$wr_bob3'
                     ";
    sql_query($sql);
}else if($w=='u'){
  $sql = " update $write_table
                set wr_bob= '$wr_bob',
                     wr_bob2= '$wr_bob2',
                     wr_bob3= '$wr_bob3' 
              where wr_id = '$wr[wr_id]' ";
    sql_query($sql);
}
?>
 
이렇게 넣어주면 됩니다. 변수 $w가 없으면 디비에 추가해주는 것이고 u 값이면 수정해서 업데이트 해주는 것이지요. 주의 할점은 추가필드의 맨 끝에 , 가 없어야 하는 것입니다. ,가 들어가면 에러납니다.
리스트에서는 $list[$i][wr_bob] 으로 넣어주면 되고 뷰페이지에서는 $view[wr_bob] 라고 넣어주면 됩니다.
 
쉽죠 쉽죠???
 
만일 기본적으로 사용하는 추가필드를 사용한다면...저런 설정 안해도 자동적으로 됩니다. wr_1 ~ wr_10까지 10개를 사용할수 있습니다.
 
단, 정말 주의할점은 필드추가한 것은 모든 게시판에 한것이 아니기 때문에...저 추가된 스킨을 다른 게시판에 적용하면 저 필드가 없다는 메세지가 뜹니다.......
 
꼭 필드를 추가한 게시판에서만 스킨을 사용해야 합니다..
|
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

태그 필터 (최대 3개) 전체 개발자 소스 기타 mysql 팁자료실 javascript php linux flash 정규표현식 jquery node.js mobile 웹서버 os 프로그램 강좌 썸네일 이미지관련 도로명주소 그누보드5 기획자 견적서 계약서 기획서 마케팅 제안서 seo 통계 서식 통계자료 퍼블리셔 html css 반응형 웹접근성 퍼블리싱 표준화 반응형웹 홈페이지기초 부트스트랩 angularjs 포럼 스크린리더 센스리더 개발자톡 개발자팁 퍼블리셔톡 퍼블리셔팁 기획자톡 기획자팁 프로그램강좌 퍼블리싱강좌
+
제목 글쓴이 날짜 조회
14년 전 조회 1,458
14년 전 조회 4,548
14년 전 조회 1,550
14년 전 조회 3,275
14년 전 조회 1,478
14년 전 조회 1,543
14년 전 조회 1,300
14년 전 조회 1,103
14년 전 조회 2,103
14년 전 조회 1,165
14년 전 조회 1,086
14년 전 조회 1,393
14년 전 조회 1,227
14년 전 조회 1,459
14년 전 조회 1,213
14년 전 조회 2,256
14년 전 조회 2,754
14년 전 조회 1,561
14년 전 조회 1,542
14년 전 조회 1,321
14년 전 조회 3,365
14년 전 조회 1,339
14년 전 조회 1,063
14년 전 조회 1,882
14년 전 조회 2,301
14년 전 조회 1,251
14년 전 조회 1,838
14년 전 조회 1,849
14년 전 조회 1,886
14년 전 조회 2,008
14년 전 조회 1,680
14년 전 조회 9,146
14년 전 조회 1,787
14년 전 조회 2,086
14년 전 조회 1,219
14년 전 조회 1,108
14년 전 조회 1,246
14년 전 조회 1,623
14년 전 조회 2,628
14년 전 조회 1,172
14년 전 조회 2,129
14년 전 조회 2,386
14년 전 조회 1,528
14년 전 조회 1,460
14년 전 조회 1,025
14년 전 조회 1,599
14년 전 조회 1,488
14년 전 조회 1,343
14년 전 조회 1,277
14년 전 조회 1,309
14년 전 조회 1,686
14년 전 조회 2,465
14년 전 조회 1,583
14년 전 조회 1,050
14년 전 조회 1만
14년 전 조회 1,362
14년 전 조회 1,234
14년 전 조회 1,816
14년 전 조회 2,925
14년 전 조회 1,743
14년 전 조회 1,414
14년 전 조회 1,196
14년 전 조회 2,096
14년 전 조회 1,419
14년 전 조회 2,767
14년 전 조회 1,214
14년 전 조회 1,215
14년 전 조회 1,334
14년 전 조회 2,086
14년 전 조회 1,203
14년 전 조회 2,706
14년 전 조회 994
14년 전 조회 3,627
14년 전 조회 3,781
14년 전 조회 3,709
14년 전 조회 3,528
14년 전 조회 1,166
14년 전 조회 1,139
14년 전 조회 1,661
14년 전 조회 1,912
14년 전 조회 1,097
14년 전 조회 1,187
14년 전 조회 1,061
14년 전 조회 5,175
14년 전 조회 1,057
14년 전 조회 5,449
14년 전 조회 1,761
14년 전 조회 1,586
14년 전 조회 1,029
14년 전 조회 1,222
14년 전 조회 1,731
14년 전 조회 1,229
14년 전 조회 1,880
14년 전 조회 1,421
14년 전 조회 1,170
14년 전 조회 1,310
14년 전 조회 3,357
14년 전 조회 1,130
14년 전 조회 1,685
14년 전 조회 1,316