[펌]그누보드5 여분필드, 확장필드

키퍼슨플젝 2015. 8. 12. 22:28

출처 [클릭]




그누보드5 여분필드,확장필드 사용하기

 

그누보드에는 여분필드가 기본적으로 10개가 있습니다.

여분필드란 입력받을수있는 항목으로 이해하시면 초보자분들은 빠를듯합니다.

예를들면 이름,연락처,내용, 이런항목들을 각 필드라고하는데

만약 성별이라는 항목을 추가해서 입력받고싶을때 입력받을 필드를 추가해줘야합니다.

그 입력받을수있는 필드가 기본적으로 wr_1부터 wr_10까지 10개의 이름으로 생성되어있습니다.

 

이 여분필드를 사용하는 방법은 

일단 글쓰기 스킨페이지에 원하는곳에

 

 

<td class=write_head>항목이름</td>

<td><input type='text' class=wr_1 size=15 name='wr_1' itemname="항목이름" value='<?=$write["wr_1"]?>' maxlength='10' style='text-align:left;'>

</td>

 

위 항목에서 size=15 이부분은 입력칸 길이이며 조절가능합니다. maxlength='10' 이부분은 입력가능한 최대칸수를 나타냅니다.

이와 같이 입력을 해줍니다 이 예제는 wr_1을 사용한 예제이며 더 추가하시는경우 wr_1부분만 순서대로 늘려주시면됩니다 (ex.wr_1,wr_2,wr_3...)

 

그리고 뷰페이지에서 출력되기 원하는곳에

 

<div><?=$view[wr_1]?></div>

 

이런식으로 입력해주시면 됩니다.

 

wr_10까지 즉 기본적으로 생성되있는 10개의 여분필드는 위와 같이 사용할수있습니다만 더필요한경우 즉 wr_11이상을 계속 사용해야한다면

 

위와같은방식으로 추가한다음 스킨폴더내부에 write_update.skin.php 라고 php파일을 하나 만드시고 내용을 아래와 같이 넣으시기 바랍니다.

혹시나 이미 있다면 수정하시면됩니다. 

단 기존에 있는내용이 아래와 다른내용이있다면 그부분은 유지하시고 아래부분을 덛붙이시기 바랍니다.

 

 

<? 

include_once("./_common.php"); 

set 

wr_1='$wr_3'+'$wr_4'+'$wr_5',

wr_2 = '$wr_3'+'$wr_4',

wr_7  = '$wr_7',

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_89 = '$wr_89',

wr_90 = '$wr_90',

wr_91 = '$wr_91'

where wr_id = '$wr_id' "; 

sql_query($sql); 

?> 

 

이런식입니다.단 그대로 복사해서 쓰시는게아니고 사용하시는만큼만 번호를 생성하셔야합니다.

또한 마지막번호가있는줄 끝에 쉼표는 없어야 에러가 나지않으니 유의하세요 (ex. wr_91 = '$wr_91'  <--끝라인 쉼표없음)

 

그리고 데이터베이스의 여분필드를 확장해야합니다.

웹 myphpadmin에서 추가하는 방법도있고

fildadd.php 라는파일을 만들어 아래와 같이 넣으신후 업로드하시고 한번 실행하시는 방법도 있습니다.

 

 

<? 

include_once("./_common.php"); 

 

$sql = "alter table g4_write_게시판테이블명

ADD wr_11 varchar(255) NOT NULL,

ADD wr_12 varchar(255) NOT NULL,

ADD wr_13 varchar(255) NOT NULL"; 

sql_query($sql); 

?> 
 

여기도 역시 마지막에 쉼표가 없어야합니다.

 

 

여기까지가 여분필드의 사용법입니다.

 

확장필드란 예를들어 입력받아야할 데이타가 300개라고 할때 위처럼 여분필드를 wr_300번까지 만드는게아니라 하나의 wr_11을 300개로 쪼개서

사용하는 방법입니다.

 

여분필드와 확장필드의 구분은들어가는 데이타가 검색이 필요한 데이타라면 여분필드를 사용하시는것이 좋으며 확장필드의 경우 

숫자로만 이루어진 데이타의 저장용도로 사용하기 좋습니다.

 

확장필드 사용은 먼저 뷰페이지와 글쓰기페이지 최상단에

 

 

<?php

if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가

 $wr_option7 = explode("|", $write[wr_7]); 

 $wr_option7_1 = $wr_option7[0]; 

 $wr_option7_2 = $wr_option7[1]; 

?>

 

이와 같이 확장할 여분필드를 작성합니다.위예제는 wr_7을 1,2 두가지로 나눈것입니다.

이 경우 wr_7에는 $wr_option7_1|$wr_option7_2 라는 값이 들어갑니다 

 

그리고 출력할 부분에

 

    <div><?=$wr_option7_1?>,<?=$wr_option7_2?></div>

 

이와 같이 해당 확장필드를 써주시면 됩니다.

 

그리고 글쓰기 페이지에 

 

 

<td >

<input type='text' class=ed size=20 name='wr_option7_1'  value=value='<?=$wr_option7_1?>'  maxlength='20'>

<input type='text' class=ed size=20 name='wr_option7_2' value=value='<?=$wr_option7_2?>'  maxlength='20'>

</td>

 

이런식으로 값을 입력받습니다.

 

그러면 정상적으로 출력되는 모습을보실수 있습니다

 

[출처] http://blog.naver.com/alas0213/220120560648

 

 

[출처] http://blog.naver.com/codesos/220156270935