최근공지, 최근글 , 사용자 라이브러리 수정본 그누 2.xxxxx 정보
일반 최근공지, 최근글 , 사용자 라이브러리 수정본 그누 2.xxxxx
관련링크
http://home.nine-host.net/lure
197회 연결
본문
그누보드를만드신 관리자님 감사드리고요
모두가 그누보드를 쉽게 사용하는 날이 오기를 바라며.......
사용자 라이브러리 수정본
**폴더를 gnu2디렉터리밑에 따로 latest_skin/스킨폴더명 /images 구성 했어요
이유 : 전에 skin디렉터리밑에 넣으니까 보드스킨하고 최근공지 뒤섞여서 복잡하고
관리자 설정부분에서 공지스킨인지 보드스킨인지 구분이 안가는 문제발생
**스킨폴더명은 변수처리를 했어요 스킨명에 아무 명칭 넣어도 경로상 문제가 없게 했고요
다른 최근글스킨을 여러개 넣어도 무방
전에는 그폴더에 최근공지스킨 1개 최근글스킨 1개 이미지추출 1개
기존 사용자 라이브러리 문제점
**수정본은 최근공지스킨 여러가지 ,최근글 스킨여러가지, 이미지 추출 여러가지 가능
이유 : 최글글 추출스킨을 여러가지 넣고 한페이지에 스킨 다양하게 추출가능하게
하기위함
최근 공지도 여러개 스킨만들어 넣고 한페이지에 상하좌우로 여러개
스킨추출가능 하도록 했어요.
**그리고 잡다한 이이콘 추출하는거 제거해서 사용자 라이브러리를 가볍게
했어요
이유 : 속도 땜에 여러 악조건넣고 실험해 본결과
필요하면 기존보드의 gblist.php나 gbveiw.php 부분에 있으니까
필요 하신분 사용자 라이브러리에 복사 정의해서 사용하면 됩니다.
** 그리고 기타 잡다한것 수정 했어요 2.xxxxx 버전 잘되고요 2.30도잘되네요
** 참고자료 : 그누보드소스,여기 올라온 팁, 제로보드 outlogin.php , 기타
gnu2 폴더에 이런 형태로 만 지켜주시면 경로수정 할 곳 딱 3곳 본인 계정 주소부분만
수정 하시면 됩니다.
근데 제가 주소분도 제거해버리고
config.inc.php화일 2라인 에다가
$cfg[path] = "./gnu2";
$cfg[url] = "http://lure.hn.org/gnu2";
넣고 해보니 잘돌아가요 ㅎㅎㅎㅎㅎㅎ
경로수정 할 곳 딱 3곳 은 혹시 몰라서
문제 생기나 여러사람이 테스트좀 부탁드려요
저는 수정 하나도 안하고 그냥 쓰걸랑요. 그러면 결국 수정할곳이 없네요 ㅎㅎㅎㅎㅎㅎ
* 최근 게시물 추출시 필요 ----------- gnu2/latest_skin/스킨이름_bbs/images
** lure_bbs폴더에는 bbs_head.skin.php화일과 bbs_foot.skin.php있고요.
* 최근 공지사항 추출시 필요 ----- gnu2/latest_skin/스킨이름_notice/images
** lure_notice폴더에는 notice_head.skin.php화일과 notice_foot.skin.php있고요.
* 최근 이미지 추출시 필요 -------gnu2/latest_skin/스킨이름_pic/images
** lure_pic폴더에는 pic_head.skin.php화일과 pic_foot.skin.php있어요.
그이하 /images 폴더에는 이미지들
좀 복잡하지요 스킨 이름 들이 제로보드 처럼 main.html 하나만 해볼까도 생각해 봤는데.....
제가 아는 범위에서 한것이니 수할사항 있으면 고쳐서 배포좀 해 주세요 저도 그냥 한 번 ......
userlib.inc.php 화일 입니다 .===== 이 아래 줄부터 필요하신분 이아래줄 부터 좌~ 악 복사해 userlib.inc.php 만드세요
<?
////////////////////////// 그누보드 2.XX 용 userlib.inc.php /////////////////////////////////////////
///// ///////
////// 많은 사람들손에 수정되고 발전되기를.... ///////
///// 이라이브러리 좋게 수정해서 배포좀해주소..... *** 개인정보보호를 위한 이메일주소 노출방지 *** //////
/// /////
///// 쓸데없이 멜 보내지마요 이상 한 것 그런 멜보낼시간에 이라이브러이 수정해효효효효효효효 ////// ////
/////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////
//// 최신글 목록 추출 //
//// //////////////////////////////////////
function print_bbs($skinname, $bo_table, $subject, $rows, $subjectlen='')
{
global $cfg;
$sql = " select * from $cfg[table_board] where bo_table = '$bo_table' ";
$bd = sql_fetch_array($sql);
if ($subjectlen == '') $subjectlen = $bd[bo_subject_len];
$cfg[board_table_prefix] = "gb_write_"; // 게시판 테이블의 접두사
$cfg[url] = "http://본인계정주소/gnu2"; // 경로 수정 할 곳
// $cfg[url] = 'http://'.$_SERVER[HTTP_HOST].'/gnu2'; //주소부분에 팁 올라온것 안되네요
$cfg[latest_skin] = "latest_skin";
$skindir = "$cfg[url]/$cfg[latest_skin]";
$skinimg = "$skindir/$skinname/images"; //이미지파일을 images폴더에 넣는걸 기본
$filedir = "$cfg[url]/data/file"; //파일디렉토리
include "./$cfg[latest_skin]/$skinname/bbs_head.skin.php";
$table = "{$cfg[board_table_prefix]}{$bo_table}";
$result = sql_query_error(" select * from $table where wr_comment = 0 order by wr_id desc limit {$rows} ");
for ($i = 0; $row = mysql_fetch_array($result); $i++) {
////////////////////////////////////////////////////////////// 날자형식 다양하게 추출 하기위함
$t_datetime = get_text(substr($row[wr_datetime],0,10)); // 날자 자르기 형식0000-00-00
$y_datetime = get_text(substr($row[wr_datetime],2,8)); // 날자 자르기 형식 00-00-00
$m_datetime = get_text(substr($row[wr_datetime],5,6)); // 날자 자르기 형식 00-00
//////////////////////////////////////////////////////////////////////
$wr_subject = get_text(cut_str($row[wr_subject], $subjectlen, ' ...'));
$wr_content = get_text(cut_str($row[wr_content], 500, ' ...[계속]')); // 내용 미리보고 500자까지만 짜르기.
$wr_memo = $row[wr_content]; // 내용 미리보고 500자까지만 짜르기.
$wr_id = $row[wr_id]; // 게시판번호
$wr_name = $row[wr_name]; // 최신글에 이름출력을 위해 변수선언.
$wr_commentcnt = $row[wr_commentcnt];
$wr_image = $row[wr_file1];
if(0<$wr_commentcnt != ""){
$wr_commentcnt = "($wr_commentcnt)";
}else{
$wr_commentcnt = "";
}
$ca_name = $wr_id = ""; // 분류를 뽑을 때 사용
if ($row[wr_id]) {
$sql1 = " select ca_name from {$table}_cat where ca_id = '$row[ca_id]'";
$row1 = sql_fetch_array($sql1);
if ($row1[ca_name])
$ca_name = "[$row1[ca_name]]";
}
$icon_new = ""; // 이부분 황석규님
if ($data[wr_datetime] >= date("Y-m-d H:i:s", time() - $board[bo_new] * 3600)) {
$icon_new = "<img src='<?=$skinimg?>/icon_new.gif' align=absmiddle' border=0'>"; //이 최근글에다
}
//뉴아이콘 나타내느거 예 삼아 하나 넣엇어요
include "./$cfg[latest_skin]/$skinname/bbs_foot.skin.php";
}
mysql_free_result($result);
}
///////////////////////////////////
//// 최신 공지 추출
////////////////////////////////////
function print_notice($skinname, $bo_table, $subject, $rows,$subjectlen='')
{
global $cfg;
$sql = " select * from $cfg[table_board] where bo_table = '$bo_table' ";
$bd = sql_fetch_array($sql);
if ($subjectlen == '') $subjectlen = $bd[bo_subject_len];
$cfg[board_table_prefix] = "gb_write_"; // 게시판 테이블의 접두사
$cfg[url] = "http://계정주소/gnu2"; // 경로 수정 할 곳
$cfg[latest_skin] = "latest_skin";
$skindir = "$cfg[url]/$cfg[latest_skin]";
$skinimg = "$skindir/$skinname/images"; //이미지파일을 images폴더에 넣는걸 기본
$filedir = "$cfg[url]/data/file"; //파일디렉토리
$table = "{$cfg[board_table_prefix]}{$bo_table}";
$result = sql_query_error(" select * from $table where wr_comment = 0 order by wr_id desc limit {$rows} ");
$row = mysql_fetch_array($result);
////////////////////////////////////////////////////////////// 날자형식 다양하게 하기위함
$t_datetime = get_text(substr($row[wr_datetime],0,10)); // 날자 자르기 형식0000-00-00
$y_datetime = get_text(substr($row[wr_datetime],2,8)); // 날자 자르기 형식 00-00-00
$m_datetime = get_text(substr($row[wr_datetime],5,6)); // 날자 자르기 형식 00-00
//////////////////////////////////////////////////////////////////////
$wr_subject = get_text(cut_str($row[wr_subject], $subjectlen, ' ...')); //제목자르기
$nr_content = get_text(cut_str($row[wr_content], 1000, ' ...[계속]')); //글내용 1000자르기
$wr_memo = $row[wr_content];
$wr_id = $row[wr_id];
$wr_name = $row[wr_name];
$wr_commentcnt = $row[wr_commentcnt];
$wr_images = $row[wr_file1];
$nr_content = nl2br(stripslashes($nr_content)) ; // 추출 글 내용 줄 변환을 위해
// $wr_datetime = $row[wr_datetime];
$wr_images = $row[wr_file1]; // 이미지를 추룰할 때
$ca_name = $wr_id = ""; // 분류를 뽑을 때 사용
if ($row[wr_id]) {
$sql1 = " select ca_name from {$table}_cat where ca_id = '$row[ca_id]'";
$row1 = sql_fetch_array($sql1);
if ($row1[ca_name])
$ca_name = "[$row1[ca_name]]";
}
include "./$cfg[latest_skin]/$skinname/notice_head.skin.php"; // Head 출력부분
for ($i = 0; $row = mysql_fetch_array($result); $i++) {
////////////////////////////////////////////////////////////// 날자형식 다양하게 추출 하기위함
$t_datetime = get_text(substr($row[wr_datetime],0,10)); // 날자 자르기 형식0000-00-00
$y_datetime = get_text(substr($row[wr_datetime],2,8)); // 날자 자르기 형식 00-00-00
$m_datetime = get_text(substr($row[wr_datetime],5,6)); // 날자 자르기 형식 00-00
//////////////////////////////////////////////////////////////////////
$wr_subject = get_text(cut_str($row[wr_subject], $subjectlen, ' ...'));
$wr_content = get_text(cut_str($row[wr_content], 1000, ' ...[계속]'));
$wr_memo = $row[wr_content];
$wr_id = $row[wr_id];
$wr_name = $row[wr_name];
$wr_commentcnt = $row[wr_commentcnt];
$wr_images = $row[wr_file1];
// $wr_datetime = $row[wr_datetime];
if(0<$wr_commentcnt != ""){
$wr_commentcnt = "($wr_commentcnt)";
}else{
$wr_commentcnt = "";
}
$ca_name = $wr_id = ""; // 분류를 뽑을 때 사용
if ($row[wr_id]) {
$sql1 = " select ca_name from {$table}_cat where ca_id = '$row[ca_id]'";
$row1 = sql_fetch_array($sql1);
if ($row1[ca_name])
$ca_name = "[$row1[ca_name]]";
}
include "./$cfg[latest_skin]/$skinname/notice_foot.skin.php"; // foot 출력부분
}
mysql_free_result($result);
}
///////////////////////////////////
//// 최신 이미지 추출 //
///////////////////////////////////
function print_pic($skinname, $bo_table, $subject, $rows, $x_size, $y_size, $x_num)
{
global $cfg;
$sql = " select * from $cfg[table_board] where bo_table = '$bo_table' ";
$bd = sql_fetch_array($sql);
if ($subjectlen == '') $subjectlen = $bd[bo_subject_len];
$cfg[board_table_prefix] = "gb_write_"; // 게시판 테이블의 접두사
$cfg[url] = "http://계정주소/gnu2"; // 경로 수정 할 곳
$cfg[latest_skin] = "latest_skin";
$skindir = "$cfg[url]/$cfg[latest_skin]";
$skinimg = "$skindir/$skinname/images"; //이미지파일을 images폴더에 넣는걸 기본
$filedir = "$cfg[url]/data/file"; //파일디렉토리
$table = "{$cfg[board_table_prefix]}{$bo_table}";
$result = sql_query_error(" select * from $table where wr_comment = 0 order by wr_id desc limit {$rows} ");
include "./$cfg[latest_skin]/$skinname/pic_head.skin.php"; // Head 출력부분
$i = 0;
while($row = mysql_fetch_array($result)) {
$wr_content = get_text(cut_str($row[wr_content], 500, ' ...[계속]'));
$wr_id = $row[wr_id];
if(eregi("\.gif|\.jpg",$row[wr_file1]))
if($row[wr_file1])
{
$s_info = @getimagesize($row[wr_file1]);
if($s_info[2]>0&&$s_info[2]<4)
{
$_xsize = $s_info[0];
if($_xsize>$_hsize) $_xsize=$_hsize;
}
}
if($row[wr_file1])
$image = "<a href='#' onclick=\"window.open('$filedir/$row[wr_file1]','img','left=0,top=0,width=$s_info[0],height=$s_info[1],scrollbar=yes,toolbars=no,resizable=yes,status=no')\" onfocus=blur()><img src=$filedir/$row[wr_file1] width=$x_size height=$y_size border=0>"; else $image="<a href='#' onfocus=blur()><img src=$filedir/noimage.gif width=$x_size height=$y_size border=0>";
$i++;
if($i>=$x_num) {
$image.="<br>";
$i=0;
} else {
$image.=" ";
}
include "./$cfg[latest_skin]/$skinname/pic_foot.skin.php"; // foot 출력부분
}
mysql_free_result($result);
}
?>
//////////////////////////////////////////////////////////////////////////////이윗줄까지 입니다 복사 끝////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////
그누보드 2.xxxxx 최근게시물 스킨 추출 사용 방법 입니다.
1) 최근 글 추출 방법
<? print_bbs("스킨폴더이름_bbs", "성성한 게시판 테이블이름", "나올 게시판이름", 게시내용추출수,내용에 나올글자수); ?>
적용예)
<? print_bbs("스킨폴더이름_bbs","lure1", "연습게시판1", 3, 25); ?>
글목록이 3줄 출력되고 제목이 25자까지 나오고 .......
2) 최근 공지 추출 방법
<? print_notice("스킨폴더이름_notice", "성성한 게시판 테이블이름", "나올 게시판이름", 게시내용추출수,내용에 나올글자수); ?>
적용예)
<? print_notice("스킨폴더이름_notice", "lure", "최신공지1", 3 ,1000); ?>
3) 최근 이미지 추출 방법
<? print_pic("스킨폴더이름_pic", "성성한 게시판 테이블이름", "나올 게시판이름", 이미지추출수,가로사아즈 ,세로사이즈,세로이미지수); ?>
적용예)
<? print_pic("스킨폴더이름_pic", "lure4", "포토게시판", 5,80,80,5 ); ?>
촤근 이미지 추출은 기존에 이미지 누르면 게시판으로 이동 하는게아니라 새창 뜨면서 이미지 크게보임
좀더보려면 More >> 누르면 게시판이동 됩니다.
기능되고요, 나오긴 다 나오는데 이미지가 한줄로 좌 나와서.......
누가 수정좀 해서 배포좀 해요
////////////////////////////////////////test.php 화일 내용 //////////////////////////
<?
require_once "./lib.inc.php";
require_once "./userlib.inc.php"; //홈피 상단에 이줄 필요
?>
<table width="100%">
<tr>
<td align="right" height="9">
</td>
</tr>
<tr>
<td align="center">
<p>
<? print_notice("lure_notice", "lure", "최신공지1", 3,400); ?>
</p>
</td>
</tr>
</table>
<table width=100%><tr>
<td valign=top><? print_bbs("lure_bbs","lure1", "연습게시판1", 3, 25); ?></td>
<td valign=top><? print_bbs("lure_bbs","lure2", "연습게시판2", 3, 25); ?></td>
</tr>
<tr>
<td valign=top><? print_bbs("lure_bbs","lure3", "연습게시판3", 3, 35); ?></td>
<td valign=top><? print_pic("lure_pic", "lure4", "포토게시판", 5,50,50,5 ); ?></td>
</tr>
<tr>
<td valign=top colspan=2> </td>
</tr>
</table>
<p><a href="mailto:">More >></a></p>
//////////////////////////////////////////////////////////////////////////////////////////////
보시느라 수고 하셨습니다
무료로계정쓰고 있는데 안 짤리게 생각나면 가끔 들러요
누그보드 테스트 사이트 사용기에 링크 해 났어요
안 질리게 밑 그림 계속 바꿔 놀 께요^^
모두가 그누보드를 쉽게 사용하는 날이 오기를 바라며.......
사용자 라이브러리 수정본
**폴더를 gnu2디렉터리밑에 따로 latest_skin/스킨폴더명 /images 구성 했어요
이유 : 전에 skin디렉터리밑에 넣으니까 보드스킨하고 최근공지 뒤섞여서 복잡하고
관리자 설정부분에서 공지스킨인지 보드스킨인지 구분이 안가는 문제발생
**스킨폴더명은 변수처리를 했어요 스킨명에 아무 명칭 넣어도 경로상 문제가 없게 했고요
다른 최근글스킨을 여러개 넣어도 무방
전에는 그폴더에 최근공지스킨 1개 최근글스킨 1개 이미지추출 1개
기존 사용자 라이브러리 문제점
**수정본은 최근공지스킨 여러가지 ,최근글 스킨여러가지, 이미지 추출 여러가지 가능
이유 : 최글글 추출스킨을 여러가지 넣고 한페이지에 스킨 다양하게 추출가능하게
하기위함
최근 공지도 여러개 스킨만들어 넣고 한페이지에 상하좌우로 여러개
스킨추출가능 하도록 했어요.
**그리고 잡다한 이이콘 추출하는거 제거해서 사용자 라이브러리를 가볍게
했어요
이유 : 속도 땜에 여러 악조건넣고 실험해 본결과
필요하면 기존보드의 gblist.php나 gbveiw.php 부분에 있으니까
필요 하신분 사용자 라이브러리에 복사 정의해서 사용하면 됩니다.
** 그리고 기타 잡다한것 수정 했어요 2.xxxxx 버전 잘되고요 2.30도잘되네요
** 참고자료 : 그누보드소스,여기 올라온 팁, 제로보드 outlogin.php , 기타
gnu2 폴더에 이런 형태로 만 지켜주시면 경로수정 할 곳 딱 3곳 본인 계정 주소부분만
수정 하시면 됩니다.
근데 제가 주소분도 제거해버리고
config.inc.php화일 2라인 에다가
$cfg[path] = "./gnu2";
$cfg[url] = "http://lure.hn.org/gnu2";
넣고 해보니 잘돌아가요 ㅎㅎㅎㅎㅎㅎ
경로수정 할 곳 딱 3곳 은 혹시 몰라서
문제 생기나 여러사람이 테스트좀 부탁드려요
저는 수정 하나도 안하고 그냥 쓰걸랑요. 그러면 결국 수정할곳이 없네요 ㅎㅎㅎㅎㅎㅎ
* 최근 게시물 추출시 필요 ----------- gnu2/latest_skin/스킨이름_bbs/images
** lure_bbs폴더에는 bbs_head.skin.php화일과 bbs_foot.skin.php있고요.
* 최근 공지사항 추출시 필요 ----- gnu2/latest_skin/스킨이름_notice/images
** lure_notice폴더에는 notice_head.skin.php화일과 notice_foot.skin.php있고요.
* 최근 이미지 추출시 필요 -------gnu2/latest_skin/스킨이름_pic/images
** lure_pic폴더에는 pic_head.skin.php화일과 pic_foot.skin.php있어요.
그이하 /images 폴더에는 이미지들
좀 복잡하지요 스킨 이름 들이 제로보드 처럼 main.html 하나만 해볼까도 생각해 봤는데.....
제가 아는 범위에서 한것이니 수할사항 있으면 고쳐서 배포좀 해 주세요 저도 그냥 한 번 ......
userlib.inc.php 화일 입니다 .===== 이 아래 줄부터 필요하신분 이아래줄 부터 좌~ 악 복사해 userlib.inc.php 만드세요
<?
////////////////////////// 그누보드 2.XX 용 userlib.inc.php /////////////////////////////////////////
///// ///////
////// 많은 사람들손에 수정되고 발전되기를.... ///////
///// 이라이브러리 좋게 수정해서 배포좀해주소..... *** 개인정보보호를 위한 이메일주소 노출방지 *** //////
/// /////
///// 쓸데없이 멜 보내지마요 이상 한 것 그런 멜보낼시간에 이라이브러이 수정해효효효효효효효 ////// ////
/////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////
//// 최신글 목록 추출 //
//// //////////////////////////////////////
function print_bbs($skinname, $bo_table, $subject, $rows, $subjectlen='')
{
global $cfg;
$sql = " select * from $cfg[table_board] where bo_table = '$bo_table' ";
$bd = sql_fetch_array($sql);
if ($subjectlen == '') $subjectlen = $bd[bo_subject_len];
$cfg[board_table_prefix] = "gb_write_"; // 게시판 테이블의 접두사
$cfg[url] = "http://본인계정주소/gnu2"; // 경로 수정 할 곳
// $cfg[url] = 'http://'.$_SERVER[HTTP_HOST].'/gnu2'; //주소부분에 팁 올라온것 안되네요
$cfg[latest_skin] = "latest_skin";
$skindir = "$cfg[url]/$cfg[latest_skin]";
$skinimg = "$skindir/$skinname/images"; //이미지파일을 images폴더에 넣는걸 기본
$filedir = "$cfg[url]/data/file"; //파일디렉토리
include "./$cfg[latest_skin]/$skinname/bbs_head.skin.php";
$table = "{$cfg[board_table_prefix]}{$bo_table}";
$result = sql_query_error(" select * from $table where wr_comment = 0 order by wr_id desc limit {$rows} ");
for ($i = 0; $row = mysql_fetch_array($result); $i++) {
////////////////////////////////////////////////////////////// 날자형식 다양하게 추출 하기위함
$t_datetime = get_text(substr($row[wr_datetime],0,10)); // 날자 자르기 형식0000-00-00
$y_datetime = get_text(substr($row[wr_datetime],2,8)); // 날자 자르기 형식 00-00-00
$m_datetime = get_text(substr($row[wr_datetime],5,6)); // 날자 자르기 형식 00-00
//////////////////////////////////////////////////////////////////////
$wr_subject = get_text(cut_str($row[wr_subject], $subjectlen, ' ...'));
$wr_content = get_text(cut_str($row[wr_content], 500, ' ...[계속]')); // 내용 미리보고 500자까지만 짜르기.
$wr_memo = $row[wr_content]; // 내용 미리보고 500자까지만 짜르기.
$wr_id = $row[wr_id]; // 게시판번호
$wr_name = $row[wr_name]; // 최신글에 이름출력을 위해 변수선언.
$wr_commentcnt = $row[wr_commentcnt];
$wr_image = $row[wr_file1];
if(0<$wr_commentcnt != ""){
$wr_commentcnt = "($wr_commentcnt)";
}else{
$wr_commentcnt = "";
}
$ca_name = $wr_id = ""; // 분류를 뽑을 때 사용
if ($row[wr_id]) {
$sql1 = " select ca_name from {$table}_cat where ca_id = '$row[ca_id]'";
$row1 = sql_fetch_array($sql1);
if ($row1[ca_name])
$ca_name = "[$row1[ca_name]]";
}
$icon_new = ""; // 이부분 황석규님
if ($data[wr_datetime] >= date("Y-m-d H:i:s", time() - $board[bo_new] * 3600)) {
$icon_new = "<img src='<?=$skinimg?>/icon_new.gif' align=absmiddle' border=0'>"; //이 최근글에다
}
//뉴아이콘 나타내느거 예 삼아 하나 넣엇어요
include "./$cfg[latest_skin]/$skinname/bbs_foot.skin.php";
}
mysql_free_result($result);
}
///////////////////////////////////
//// 최신 공지 추출
////////////////////////////////////
function print_notice($skinname, $bo_table, $subject, $rows,$subjectlen='')
{
global $cfg;
$sql = " select * from $cfg[table_board] where bo_table = '$bo_table' ";
$bd = sql_fetch_array($sql);
if ($subjectlen == '') $subjectlen = $bd[bo_subject_len];
$cfg[board_table_prefix] = "gb_write_"; // 게시판 테이블의 접두사
$cfg[url] = "http://계정주소/gnu2"; // 경로 수정 할 곳
$cfg[latest_skin] = "latest_skin";
$skindir = "$cfg[url]/$cfg[latest_skin]";
$skinimg = "$skindir/$skinname/images"; //이미지파일을 images폴더에 넣는걸 기본
$filedir = "$cfg[url]/data/file"; //파일디렉토리
$table = "{$cfg[board_table_prefix]}{$bo_table}";
$result = sql_query_error(" select * from $table where wr_comment = 0 order by wr_id desc limit {$rows} ");
$row = mysql_fetch_array($result);
////////////////////////////////////////////////////////////// 날자형식 다양하게 하기위함
$t_datetime = get_text(substr($row[wr_datetime],0,10)); // 날자 자르기 형식0000-00-00
$y_datetime = get_text(substr($row[wr_datetime],2,8)); // 날자 자르기 형식 00-00-00
$m_datetime = get_text(substr($row[wr_datetime],5,6)); // 날자 자르기 형식 00-00
//////////////////////////////////////////////////////////////////////
$wr_subject = get_text(cut_str($row[wr_subject], $subjectlen, ' ...')); //제목자르기
$nr_content = get_text(cut_str($row[wr_content], 1000, ' ...[계속]')); //글내용 1000자르기
$wr_memo = $row[wr_content];
$wr_id = $row[wr_id];
$wr_name = $row[wr_name];
$wr_commentcnt = $row[wr_commentcnt];
$wr_images = $row[wr_file1];
$nr_content = nl2br(stripslashes($nr_content)) ; // 추출 글 내용 줄 변환을 위해
// $wr_datetime = $row[wr_datetime];
$wr_images = $row[wr_file1]; // 이미지를 추룰할 때
$ca_name = $wr_id = ""; // 분류를 뽑을 때 사용
if ($row[wr_id]) {
$sql1 = " select ca_name from {$table}_cat where ca_id = '$row[ca_id]'";
$row1 = sql_fetch_array($sql1);
if ($row1[ca_name])
$ca_name = "[$row1[ca_name]]";
}
include "./$cfg[latest_skin]/$skinname/notice_head.skin.php"; // Head 출력부분
for ($i = 0; $row = mysql_fetch_array($result); $i++) {
////////////////////////////////////////////////////////////// 날자형식 다양하게 추출 하기위함
$t_datetime = get_text(substr($row[wr_datetime],0,10)); // 날자 자르기 형식0000-00-00
$y_datetime = get_text(substr($row[wr_datetime],2,8)); // 날자 자르기 형식 00-00-00
$m_datetime = get_text(substr($row[wr_datetime],5,6)); // 날자 자르기 형식 00-00
//////////////////////////////////////////////////////////////////////
$wr_subject = get_text(cut_str($row[wr_subject], $subjectlen, ' ...'));
$wr_content = get_text(cut_str($row[wr_content], 1000, ' ...[계속]'));
$wr_memo = $row[wr_content];
$wr_id = $row[wr_id];
$wr_name = $row[wr_name];
$wr_commentcnt = $row[wr_commentcnt];
$wr_images = $row[wr_file1];
// $wr_datetime = $row[wr_datetime];
if(0<$wr_commentcnt != ""){
$wr_commentcnt = "($wr_commentcnt)";
}else{
$wr_commentcnt = "";
}
$ca_name = $wr_id = ""; // 분류를 뽑을 때 사용
if ($row[wr_id]) {
$sql1 = " select ca_name from {$table}_cat where ca_id = '$row[ca_id]'";
$row1 = sql_fetch_array($sql1);
if ($row1[ca_name])
$ca_name = "[$row1[ca_name]]";
}
include "./$cfg[latest_skin]/$skinname/notice_foot.skin.php"; // foot 출력부분
}
mysql_free_result($result);
}
///////////////////////////////////
//// 최신 이미지 추출 //
///////////////////////////////////
function print_pic($skinname, $bo_table, $subject, $rows, $x_size, $y_size, $x_num)
{
global $cfg;
$sql = " select * from $cfg[table_board] where bo_table = '$bo_table' ";
$bd = sql_fetch_array($sql);
if ($subjectlen == '') $subjectlen = $bd[bo_subject_len];
$cfg[board_table_prefix] = "gb_write_"; // 게시판 테이블의 접두사
$cfg[url] = "http://계정주소/gnu2"; // 경로 수정 할 곳
$cfg[latest_skin] = "latest_skin";
$skindir = "$cfg[url]/$cfg[latest_skin]";
$skinimg = "$skindir/$skinname/images"; //이미지파일을 images폴더에 넣는걸 기본
$filedir = "$cfg[url]/data/file"; //파일디렉토리
$table = "{$cfg[board_table_prefix]}{$bo_table}";
$result = sql_query_error(" select * from $table where wr_comment = 0 order by wr_id desc limit {$rows} ");
include "./$cfg[latest_skin]/$skinname/pic_head.skin.php"; // Head 출력부분
$i = 0;
while($row = mysql_fetch_array($result)) {
$wr_content = get_text(cut_str($row[wr_content], 500, ' ...[계속]'));
$wr_id = $row[wr_id];
if(eregi("\.gif|\.jpg",$row[wr_file1]))
if($row[wr_file1])
{
$s_info = @getimagesize($row[wr_file1]);
if($s_info[2]>0&&$s_info[2]<4)
{
$_xsize = $s_info[0];
if($_xsize>$_hsize) $_xsize=$_hsize;
}
}
if($row[wr_file1])
$image = "<a href='#' onclick=\"window.open('$filedir/$row[wr_file1]','img','left=0,top=0,width=$s_info[0],height=$s_info[1],scrollbar=yes,toolbars=no,resizable=yes,status=no')\" onfocus=blur()><img src=$filedir/$row[wr_file1] width=$x_size height=$y_size border=0>"; else $image="<a href='#' onfocus=blur()><img src=$filedir/noimage.gif width=$x_size height=$y_size border=0>";
$i++;
if($i>=$x_num) {
$image.="<br>";
$i=0;
} else {
$image.=" ";
}
include "./$cfg[latest_skin]/$skinname/pic_foot.skin.php"; // foot 출력부분
}
mysql_free_result($result);
}
?>
//////////////////////////////////////////////////////////////////////////////이윗줄까지 입니다 복사 끝////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////
그누보드 2.xxxxx 최근게시물 스킨 추출 사용 방법 입니다.
1) 최근 글 추출 방법
<? print_bbs("스킨폴더이름_bbs", "성성한 게시판 테이블이름", "나올 게시판이름", 게시내용추출수,내용에 나올글자수); ?>
적용예)
<? print_bbs("스킨폴더이름_bbs","lure1", "연습게시판1", 3, 25); ?>
글목록이 3줄 출력되고 제목이 25자까지 나오고 .......
2) 최근 공지 추출 방법
<? print_notice("스킨폴더이름_notice", "성성한 게시판 테이블이름", "나올 게시판이름", 게시내용추출수,내용에 나올글자수); ?>
적용예)
<? print_notice("스킨폴더이름_notice", "lure", "최신공지1", 3 ,1000); ?>
3) 최근 이미지 추출 방법
<? print_pic("스킨폴더이름_pic", "성성한 게시판 테이블이름", "나올 게시판이름", 이미지추출수,가로사아즈 ,세로사이즈,세로이미지수); ?>
적용예)
<? print_pic("스킨폴더이름_pic", "lure4", "포토게시판", 5,80,80,5 ); ?>
촤근 이미지 추출은 기존에 이미지 누르면 게시판으로 이동 하는게아니라 새창 뜨면서 이미지 크게보임
좀더보려면 More >> 누르면 게시판이동 됩니다.
기능되고요, 나오긴 다 나오는데 이미지가 한줄로 좌 나와서.......
누가 수정좀 해서 배포좀 해요
////////////////////////////////////////test.php 화일 내용 //////////////////////////
<?
require_once "./lib.inc.php";
require_once "./userlib.inc.php"; //홈피 상단에 이줄 필요
?>
<table width="100%">
<tr>
<td align="right" height="9">
</td>
</tr>
<tr>
<td align="center">
<p>
<? print_notice("lure_notice", "lure", "최신공지1", 3,400); ?>
</p>
</td>
</tr>
</table>
<table width=100%><tr>
<td valign=top><? print_bbs("lure_bbs","lure1", "연습게시판1", 3, 25); ?></td>
<td valign=top><? print_bbs("lure_bbs","lure2", "연습게시판2", 3, 25); ?></td>
</tr>
<tr>
<td valign=top><? print_bbs("lure_bbs","lure3", "연습게시판3", 3, 35); ?></td>
<td valign=top><? print_pic("lure_pic", "lure4", "포토게시판", 5,50,50,5 ); ?></td>
</tr>
<tr>
<td valign=top colspan=2> </td>
</tr>
</table>
<p><a href="mailto:">More >></a></p>
//////////////////////////////////////////////////////////////////////////////////////////////
보시느라 수고 하셨습니다
무료로계정쓰고 있는데 안 짤리게 생각나면 가끔 들러요
누그보드 테스트 사이트 사용기에 링크 해 났어요
안 질리게 밑 그림 계속 바꿔 놀 께요^^
추천
11
11
댓글 전체
장군님 만세!...ㅋㅋㅋ 감싸..
아~~ 보드를 어떻게 깔던 상관없이 스킨은
수정없이 잘돌아 가네요.^^
수정없이 잘돌아 가네요.^^
$cfg[url] = "http://본인계정주소/gnu2"; // 경로 수정 할 곳
수정할곳 3곳 이부분 없어도 잘돌아 가는 이유를 모르겠네요
include "./$cfg[latest_skin]/$skinname/bbs_head.skin.php"; 이런부분을 (즉 include부분)
이렇게 해도 잘돌아가고
$cfg[url].include "$cfg[latest_skin]/$skinname/bbs_head.skin.php";
아렇게해도 잘돌라가고
include("$cfg[latest_skin]/$skinname/bbs_foot.skin.php");
수정할곳 3곳 이부분 없어도 잘돌아 가는 이유를 모르겠네요
include "./$cfg[latest_skin]/$skinname/bbs_head.skin.php"; 이런부분을 (즉 include부분)
이렇게 해도 잘돌아가고
$cfg[url].include "$cfg[latest_skin]/$skinname/bbs_head.skin.php";
아렇게해도 잘돌라가고
include("$cfg[latest_skin]/$skinname/bbs_foot.skin.php");
"test.php","lib.inc.php", "userlib.inc.php", "config.inc.php" 파일들은 루트에 위치 시키셔야 합니다
보드를./gun2 이렇게 설치하시믄 이보드는 경로 문제를 일으킴니다
이보는 gun2디렉토리안에 있는 화일과 디렉토리만 설치 하시면 별 문제는 안생기리라봄니다.
이보드 들의 소스를 보시면 아시 겠지만 경로가 거의 ./ 이런 형태로 되어 있어요
즉 루트가 gnu2 안에 설정이 되어있어요
루트점을 변경 하시려면 여기 팁 찾아 보시거나 ./형태로 되어 있는 형태 경로를 수정 하세요
태인님도 역시 마찬가지
return sql_fetch_array(" select * from $write where wr_id = '$wr_id' ");
경로 못 찾아서..
보드를./gun2 이렇게 설치하시믄 이보드는 경로 문제를 일으킴니다
이보는 gun2디렉토리안에 있는 화일과 디렉토리만 설치 하시면 별 문제는 안생기리라봄니다.
이보드 들의 소스를 보시면 아시 겠지만 경로가 거의 ./ 이런 형태로 되어 있어요
즉 루트가 gnu2 안에 설정이 되어있어요
루트점을 변경 하시려면 여기 팁 찾아 보시거나 ./형태로 되어 있는 형태 경로를 수정 하세요
태인님도 역시 마찬가지
return sql_fetch_array(" select * from $write where wr_id = '$wr_id' ");
경로 못 찾아서..
보드를./gun2 이렇게 설치 하신분
홈피상단에
<?
$reldir="./gnu2";
require_once "$reldir/lib.inc.php";
require_once "$reldir/userlib.inc.php";
?>
이렇게 하니 경로 에러가없어지더군요
문제 생기면 그부분에 주소가 ./ 게생긴데서 에러가 나서
이부분을 $reldir/ 이렇게 하니 그래 말성을부리던 경로 문제가
해결이 되더군요.
홈피상단에
<?
$reldir="./gnu2";
require_once "$reldir/lib.inc.php";
require_once "$reldir/userlib.inc.php";
?>
이렇게 하니 경로 에러가없어지더군요
문제 생기면 그부분에 주소가 ./ 게생긴데서 에러가 나서
이부분을 $reldir/ 이렇게 하니 그래 말성을부리던 경로 문제가
해결이 되더군요.
Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting ']' in /계정주소/www/gnu2/userlib.inc.php on line 233 ,...
Fatal error: Call to undefined function: print_pic() in /계정주소/www/gnu2/test.php on line 30
이런에러나네요 처음이라 잘 몰라요 설명좀 해주세요..
늘 건강 하시길...[]
Fatal error: Call to undefined function: print_pic() in /계정주소/www/gnu2/test.php on line 30
이런에러나네요 처음이라 잘 몰라요 설명좀 해주세요..
늘 건강 하시길...[]
최근공지 부분 144리인쯤에 이부분
$n_commentcnt = $row[wr_commentcnt];
if($row[commentcnt])
$n_comment = "[".$row[commentcnt]."]";
else $n_comment="";
이부분 삭제 해 버리세요 반복 되는부분
여기제가 수정
저는 그냥도 잘되는데
$n_commentcnt = $row[wr_commentcnt];
if($row[commentcnt])
$n_comment = "[".$row[commentcnt]."]";
else $n_comment="";
이부분 삭제 해 버리세요 반복 되는부분
여기제가 수정
저는 그냥도 잘되는데
이런 에러가 나오네요. 공지는 나오는데.
상당에..
Warning: Cannot send session cache limiter - headers already sent (output started at /home/01/inpyong12/www/gnu2/samnotice.php:2) in /home/01/inpyong12/www/gnu2/lib.inc.php on line 44
하단에
select * from gb_write_lure1 where wr_comment = 0 order by wr_id desc limit 3
1146 : Table 'inpyong12.gb_write_lure1' doesn't exist
상당에..
Warning: Cannot send session cache limiter - headers already sent (output started at /home/01/inpyong12/www/gnu2/samnotice.php:2) in /home/01/inpyong12/www/gnu2/lib.inc.php on line 44
하단에
select * from gb_write_lure1 where wr_comment = 0 order by wr_id desc limit 3
1146 : Table 'inpyong12.gb_write_lure1' doesn't exist