본문 바로가기
그누보드/게시판

[그누보드 wr_11~이상 사용, 여분필드] 게시판 커스텀

by Gi-One 2022. 1. 21.

#그누보드#게시판#여분필드#wr_11

 

안녕하세요. Gi_1입니다.

 

그누보드에서는 wr_1 ~ wr_10까지 기본적으로 DB세팅이 되어 있어, HTML코드만 작성하면 게시판 폼 작성이 가능합니다. 

하지만, wr_11 이상 사용하고 싶을 때가 있습니다. ( 설문조사, 자원봉사신청, 중고차매매 등.. ) 입력해야할 사항이 많은 게시판이 있죠.

 

그래서 write.update.skin.php 파일을 통해 DB를 늘리고, 사용해볼 것 입니다.

 

우선, skin/board/게시판/위치에 write.update.skin.php 파일이 없다면 생성해줍니다.

 

이후 아래와 같이 작성해주세요.

 



<?

$wr_11_chk = sql_fetch("SHOW COLUMNS FROM `$write_table`  WHERE `Field` = 'wr_11'");
if($wr_11_chk['Field'] == "")   sql_query("ALTER TABLE `$write_table` ADD `wr_11` VARCHAR( 255 ) NOT NULL AFTER `wr_10` ");

$wr_12_chk = sql_fetch("SHOW COLUMNS FROM $write_table  WHERE `Field` = 'wr_12'");
if($wr_12_chk['Field'] == "")   sql_query("ALTER TABLE $write_table ADD `wr_12` VARCHAR( 255 ) NOT NULL AFTER `wr_11` ");

$wr_13_chk = sql_fetch("SHOW COLUMNS FROM $write_table  WHERE `Field` = 'wr_13'");
if($wr_13_chk['Field'] == "")   sql_query("ALTER TABLE $write_table ADD `wr_13` VARCHAR( 255 ) NOT NULL AFTER `wr_12` ");

$wr_14_chk = sql_fetch("SHOW COLUMNS FROM $write_table  WHERE `Field` = 'wr_14'");
if($wr_14_chk['Field'] == "")   sql_query("ALTER TABLE $write_table ADD `wr_14` VARCHAR( 255 ) NOT NULL AFTER `wr_13` ");

$wr_15_chk = sql_fetch("SHOW COLUMNS FROM $write_table  WHERE `Field` = 'wr_15'");
if($wr_15_chk['Field'] == "")   sql_query("ALTER TABLE $write_table ADD `wr_15` VARCHAR( 255 ) NOT NULL AFTER `wr_14` ");

$wr_16_chk = sql_fetch("SHOW COLUMNS FROM $write_table  WHERE `Field` = 'wr_16'");
if($wr_16_chk['Field'] == "")   sql_query("ALTER TABLE $write_table ADD `wr_16` VARCHAR( 255 ) NOT NULL AFTER `wr_15` ");

$wr_17_chk = sql_fetch("SHOW COLUMNS FROM $write_table  WHERE `Field` = 'wr_17'");
if($wr_17_chk['Field'] == "")   sql_query("ALTER TABLE $write_table ADD `wr_17` VARCHAR( 255 ) NOT NULL AFTER `wr_16` ");

$wr_18_chk = sql_fetch("SHOW COLUMNS FROM $write_table  WHERE `Field` = 'wr_18'");
if($wr_18_chk['Field'] == "")   sql_query("ALTER TABLE $write_table ADD `wr_18` VARCHAR( 255 ) NOT NULL AFTER `wr_17` ");

$wr_19_chk = sql_fetch("SHOW COLUMNS FROM $write_table  WHERE `Field` = 'wr_19'");
if($wr_19_chk['Field'] == "")   sql_query("ALTER TABLE $write_table ADD `wr_19` VARCHAR( 255 ) NOT NULL AFTER `wr_18` ");

$wr_20_chk = sql_fetch("SHOW COLUMNS FROM $write_table  WHERE `Field` = 'wr_20'");
if($wr_20_chk['Field'] == "")   sql_query("ALTER TABLE $write_table ADD `wr_20` VARCHAR( 255 ) NOT NULL AFTER `wr_19` ");




$sql =" update $write_table
      set


        wr_11 = '$wr_11',
        wr_12 = '$wr_12',
        wr_13 = '$wr_13',
        wr_14 = '$wr_14',
        wr_15 = '$wr_15',
        wr_16 = '$wr_16',
        wr_17 = '$wr_17',
        wr_18 = '$wr_18',
        wr_19 = '$wr_19',
        wr_20 = '$wr_20'

      where wr_id = '$wr_id'
";

sql_query($sql);

?>
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
?>
 
해당 코드는 wr_11~ wr_20까지 사용할 수 있도록 추가한 코드입니다.
sql을 모르시는 경우 MYSQL을 조금만 공부해 보시는것을 추천 드리고, 해당부분을 복사 붙여넣기만 해서 사용하셔도 됩니다.
wr_21이상 사용하고 싶으시다면, 
$wr_20_chk = sql_fetch("SHOW COLUMNS FROM $write_table  WHERE `Field` = 'wr_20'");
if($wr_20_chk['Field'] == "")   sql_query("ALTER TABLE $write_table ADD `wr_20` VARCHAR( 255 ) NOT NULL AFTER `wr_19` ");

 

 

해당 부분에서, wr_20 -> wr_21로, wr_19->wr_20으로 변경하시어 한줄 더 작성하시고,

 

아래 $sql = "update $write table ~~ 부분에서

wr_21을 추가하여 주시면 됩니다.

 

$sql =" update $write_table
      set


        wr_11 = '$wr_11',
        wr_12 = '$wr_12',
        wr_13 = '$wr_13',
        wr_14 = '$wr_14',
        wr_15 = '$wr_15',
        wr_16 = '$wr_16',
        wr_17 = '$wr_17',
        wr_18 = '$wr_18',
        wr_19 = '$wr_19',
        wr_20 = '$wr_20'

      where wr_id = '$wr_id'
";

** wr_20에서는 쉼표가 들어가지 않았습니다. ( 마지막 부분에서는 쉼표를 사용하지 않습니다. ) **

 

 

외 방법 및 참고사이트

https://gnustudy.com/bbs/board.php?bo_table=skin_board&wr_id=31http://gnustudy.com/bbs/board.php?bo_table=skin_board&wr_id=31 

 

여분필드를 활용한 게시판 스킨 제작 - 여분 필드 10개 이상 사용하기 - 게시판스킨강좌, 그누보

그누보드 여분 필드는 이전 강좌에서 살펴본 것과 같이 wr_1 부터 wr_10 까지 총 10개만 제공하고 있습니다.10개도 적당해 보이긴 하지만 스킨 제작하면서 부족할 경우 참고해서 추가하면 됩니다.방

gnustudy.com

https://gnustudy.com/bbs/board.php?bo_table=skin_board&wr_id=76 

 

10개 이상의 여분필드를 사용할 때 게시판 생성 단계에서부터 추가하기 - 게시판스킨강좌, 그누

여분 필드를 10개 이상 사용하는 방법은 이전 강좌에서 자세히 살펴봤었습니다.http://gnustudy.com/bbs/board.php?bo_table=skin_board&wr_id=31위 방법은 원하는 특정 게시판만 사용하고 싶을 때 사용하면 되고

gnustudy.com

 

 
 
 

 

댓글