2.10정식용 최신글 추츨(버그패치완료) 정보
일반 2.10정식용 최신글 추츨(버그패치완료)
관련링크
http://ryllife.wo.to
129회 연결
첨부파일
본문
먼저....기존 최신글, 최신그림 추출소스상에 스킨을 이용하면 한개만 출력되는 버그때문에
스킨을 이용할수가 없었는데 배열에 문제가 있나 싶어서 소스를 한줄씩 다 분석해 본 결과
require_once 문에 문제가 있었습니다. 첫번째 게시판은 불러와지는데 2번째부터는 화면에 출력이 되지 않는 현상이 발생했는데...잘은 모르지만 require_once함수 특성상 한번만 불러와지게 되어있어서
같은 화면에 두개가 존재하지 못하기때문에 발생한듯합니다. 그래서 include로 대처해보니
이상없이 나오는군요.... 이거를 바탕으로 최신게시물, 최신그림 추츨 스킨을 제작하시기 바랍니다.
간단하게 최신글 추츨 소스입니다.
최신글 및 최신그림추츨은 userlib.inc.php라는 파일을 만들어서 사용시 require_once하여 사용한다는 전제하에 만들었습니다.
/#####################################################################################
/# userlib.inc.php
/#####################################################################################
<?
// 최신글 추출
function newlist($skins, $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://111.111.111.111/~oldccc/gnu2"; // 개인설정에 맞게수정하세요
$skindir = "$cfg[url]/skin/$skins";
$skinimg = "$skindir/images"; // 이미지파일을 images폴더에 넣는걸 기본으로했습니다.
include "./gnu2/skin/$skins/newlist_head.skin.php"; // Head 출력부분입니다. 글만 출력시는 주석처리하시면됩니다.
$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++) {
$icon_file = "";
if ($row[wr_file1] || $row[wr_file2])
$icon_file = "<img src='$skinimg/icon_file.gif' align=absmiddle>";
$icon_link = "";
if ($row[wr_link1] || $row[wr_link2])
$icon_link = "<img src='$skinimg/icon_link.gif' align=absmiddle>";
$a_list_link = "<a href='$cfg[url]/gbview.php?$qstr&page=$page&wr_id=$data[wr_id]' class=s_a>";
$icon_new = "";
if ($row[wr_datetime] >= date("Y-m-d H:i:s", time() - $bd[bo_new] * 3600))
$icon_new = "<img src='$skinimg/icon_new.gif' align=absmiddle'>";
$icon_hot = "";
if ($row[wr_hit] >= $bd[bo_hot])
$icon_hot = "<img src='$skinimg/icon_hot.gif' align=absmiddle'>";
$icon_battle = "";
if ($row[wr_commentcnt] >= $bd[bo_battle])
$icon_battle = "<img src='$skinimg/icon_battle.gif' align=absmiddle'>";
$icon_secret = "";
if ($row[wr_secret])
$icon_secret = "<img src='$skinimg/icon_secret.gif' align=absmiddle'>";
$wr_commentcnt = ($row[wr_commentcnt]) ? $row[wr_commentcnt] : null;
$wr_subject = get_text(cut_str($row[wr_subject], $subjectlen, '…'));
$wr_content = get_text(cut_str($row[wr_content], 400, '....[계속]')); // 내용 미리보기를 위해 넣었습니다. 400자까지만 짜르기했습니다.
$wr_id = $row[wr_id]; // 게시판번호
$wr_name = $row[wr_name]; // 게시자이름 혹 최신글에 이름출력을 위해 변수선언했습니다.
$wr_datetime = $row[wr_datetime]; // 최신글에 날짜까지 출력하고싶을때를 위해 변수선언했습니다.
include "./gnu2/skin/$skins/newlist_main.skin.php";
}
mysql_free_result($result);
}
?>
/#####################################################################################
/# ./gnu2/skin/$skins/newlist_head.skin.php
/#####################################################################################
<!-- 최신글 추출 head 부분 -->
<table border=0 cellpadding=0 cellspacing=0 width=100% align=center height=20 style='font-family:Verdana; font-size:9pt;'>
<tr>
<td width=22 height=22 style='font-size:9pt; font:돋움'>
<?="<img src='$skinimg/qaz_lost_02.gif' width=22 height=29 border=0>" ?></td>
<td height=22 width=343 background='<?=$skinimg?>/qaz_lost_04.gif' >
<?="<b>$subject</b>"?></td>
<td height=22 background='<?=$skinimg?>/qaz_lost_04.gif' >
<?="<a href='$cfg[url]/gblist.php?bo_table=$bo_table'>
<img src='$skinimg/more.gif' width=40 height=15 border=0></a>" ?></td>
<td width=22 height=22 align=right>
<?="<img src='$skinimg/qaz_lost_03.gif' width=22 height=29 border=0>" ?></td>
</tr>
</table>
/#####################################################################################
/# ./gnu2/skin/$skins/newlist_main.skin.php
/#####################################################################################
<?
/*
최신글추출 스킨 사용가능 변수 ver 2.10정식용
<?=$skindir?> 스킨디렉토리 gnu2/skin/스킨디렉토리명 까지
<?=$skinimg?> 스킨디렉토리이미지 gnu2/skin/스킨디렉토리명/images 까지
<?=$cfg[url]?> 절대주소 http://xxx.xxx.xxx.xxx/
<?=$bo_table?> 게시판명
<?=$wr_commentcnt?> 커맨트갯수 원본 $row[wr_commentcnt]
<?=$wr_subject?> 제목 원본 $row[wr_subject]
<?=$wr_content?> 내용 원본 $row[wr_content]
<?=$wr_id?> 글번호 원본 $row[wr_id]
<?=$wr_name?> 작성자이름 원본 $row[wr_name]
<?=$wr_datetime?> 작성시간 원본 $row[wr_datetime]
기본적으로 최신게시판에 사용되는 변수는 다 선언했습니다.
기타 변수 추가는 userlib.inc.php에서 변수면 = $row[wr_변수명];
하고 선언해주면됩니다.
*/
?>
<!-- 최근글 목록이 나오는 부분 -->
<table border=0 cellpadding=0 cellspacing=0 width=100% align=center>
<tr>
<td width=100% onMouseOver=this.style.backgroundColor='FFFAF3' onMouseOut=this.style.backgroundColor='' style='font-size:9pt;' title='<?=$wr_content?>'>
<img src='<?=$skinimg?>/arrow.gif' border=0>
<a href='<?=$cfg[url]?>/gbview.php?bo_table=<?=$bo_table?>&wr_id=<?=$wr_id?>'><?=$wr_subject?></a>
<span style='font-size:8pt;'><?=$commentcnt?></span>
<?=$icon_new?> <?=$icon_hot?> <?=$icon_battle?> <?=$icon_secret?>
</td>
</tr>
</table>
p.s : 최신겔러리 추출도 곧 정리해서 올리도록하겠습니다.
이것 버그 잡는다고 몇일고생을 했네요 *^^* 휴~~~~~~!
이걸 참조하셔서 좋은스킨 많이 만들어주세요 *^^*
스킨을 이용할수가 없었는데 배열에 문제가 있나 싶어서 소스를 한줄씩 다 분석해 본 결과
require_once 문에 문제가 있었습니다. 첫번째 게시판은 불러와지는데 2번째부터는 화면에 출력이 되지 않는 현상이 발생했는데...잘은 모르지만 require_once함수 특성상 한번만 불러와지게 되어있어서
같은 화면에 두개가 존재하지 못하기때문에 발생한듯합니다. 그래서 include로 대처해보니
이상없이 나오는군요.... 이거를 바탕으로 최신게시물, 최신그림 추츨 스킨을 제작하시기 바랍니다.
간단하게 최신글 추츨 소스입니다.
최신글 및 최신그림추츨은 userlib.inc.php라는 파일을 만들어서 사용시 require_once하여 사용한다는 전제하에 만들었습니다.
/#####################################################################################
/# userlib.inc.php
/#####################################################################################
<?
// 최신글 추출
function newlist($skins, $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://111.111.111.111/~oldccc/gnu2"; // 개인설정에 맞게수정하세요
$skindir = "$cfg[url]/skin/$skins";
$skinimg = "$skindir/images"; // 이미지파일을 images폴더에 넣는걸 기본으로했습니다.
include "./gnu2/skin/$skins/newlist_head.skin.php"; // Head 출력부분입니다. 글만 출력시는 주석처리하시면됩니다.
$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++) {
$icon_file = "";
if ($row[wr_file1] || $row[wr_file2])
$icon_file = "<img src='$skinimg/icon_file.gif' align=absmiddle>";
$icon_link = "";
if ($row[wr_link1] || $row[wr_link2])
$icon_link = "<img src='$skinimg/icon_link.gif' align=absmiddle>";
$a_list_link = "<a href='$cfg[url]/gbview.php?$qstr&page=$page&wr_id=$data[wr_id]' class=s_a>";
$icon_new = "";
if ($row[wr_datetime] >= date("Y-m-d H:i:s", time() - $bd[bo_new] * 3600))
$icon_new = "<img src='$skinimg/icon_new.gif' align=absmiddle'>";
$icon_hot = "";
if ($row[wr_hit] >= $bd[bo_hot])
$icon_hot = "<img src='$skinimg/icon_hot.gif' align=absmiddle'>";
$icon_battle = "";
if ($row[wr_commentcnt] >= $bd[bo_battle])
$icon_battle = "<img src='$skinimg/icon_battle.gif' align=absmiddle'>";
$icon_secret = "";
if ($row[wr_secret])
$icon_secret = "<img src='$skinimg/icon_secret.gif' align=absmiddle'>";
$wr_commentcnt = ($row[wr_commentcnt]) ? $row[wr_commentcnt] : null;
$wr_subject = get_text(cut_str($row[wr_subject], $subjectlen, '…'));
$wr_content = get_text(cut_str($row[wr_content], 400, '....[계속]')); // 내용 미리보기를 위해 넣었습니다. 400자까지만 짜르기했습니다.
$wr_id = $row[wr_id]; // 게시판번호
$wr_name = $row[wr_name]; // 게시자이름 혹 최신글에 이름출력을 위해 변수선언했습니다.
$wr_datetime = $row[wr_datetime]; // 최신글에 날짜까지 출력하고싶을때를 위해 변수선언했습니다.
include "./gnu2/skin/$skins/newlist_main.skin.php";
}
mysql_free_result($result);
}
?>
/#####################################################################################
/# ./gnu2/skin/$skins/newlist_head.skin.php
/#####################################################################################
<!-- 최신글 추출 head 부분 -->
<table border=0 cellpadding=0 cellspacing=0 width=100% align=center height=20 style='font-family:Verdana; font-size:9pt;'>
<tr>
<td width=22 height=22 style='font-size:9pt; font:돋움'>
<?="<img src='$skinimg/qaz_lost_02.gif' width=22 height=29 border=0>" ?></td>
<td height=22 width=343 background='<?=$skinimg?>/qaz_lost_04.gif' >
<?="<b>$subject</b>"?></td>
<td height=22 background='<?=$skinimg?>/qaz_lost_04.gif' >
<?="<a href='$cfg[url]/gblist.php?bo_table=$bo_table'>
<img src='$skinimg/more.gif' width=40 height=15 border=0></a>" ?></td>
<td width=22 height=22 align=right>
<?="<img src='$skinimg/qaz_lost_03.gif' width=22 height=29 border=0>" ?></td>
</tr>
</table>
/#####################################################################################
/# ./gnu2/skin/$skins/newlist_main.skin.php
/#####################################################################################
<?
/*
최신글추출 스킨 사용가능 변수 ver 2.10정식용
<?=$skindir?> 스킨디렉토리 gnu2/skin/스킨디렉토리명 까지
<?=$skinimg?> 스킨디렉토리이미지 gnu2/skin/스킨디렉토리명/images 까지
<?=$cfg[url]?> 절대주소 http://xxx.xxx.xxx.xxx/
<?=$bo_table?> 게시판명
<?=$wr_commentcnt?> 커맨트갯수 원본 $row[wr_commentcnt]
<?=$wr_subject?> 제목 원본 $row[wr_subject]
<?=$wr_content?> 내용 원본 $row[wr_content]
<?=$wr_id?> 글번호 원본 $row[wr_id]
<?=$wr_name?> 작성자이름 원본 $row[wr_name]
<?=$wr_datetime?> 작성시간 원본 $row[wr_datetime]
기본적으로 최신게시판에 사용되는 변수는 다 선언했습니다.
기타 변수 추가는 userlib.inc.php에서 변수면 = $row[wr_변수명];
하고 선언해주면됩니다.
*/
?>
<!-- 최근글 목록이 나오는 부분 -->
<table border=0 cellpadding=0 cellspacing=0 width=100% align=center>
<tr>
<td width=100% onMouseOver=this.style.backgroundColor='FFFAF3' onMouseOut=this.style.backgroundColor='' style='font-size:9pt;' title='<?=$wr_content?>'>
<img src='<?=$skinimg?>/arrow.gif' border=0>
<a href='<?=$cfg[url]?>/gbview.php?bo_table=<?=$bo_table?>&wr_id=<?=$wr_id?>'><?=$wr_subject?></a>
<span style='font-size:8pt;'><?=$commentcnt?></span>
<?=$icon_new?> <?=$icon_hot?> <?=$icon_battle?> <?=$icon_secret?>
</td>
</tr>
</table>
p.s : 최신겔러리 추출도 곧 정리해서 올리도록하겠습니다.
이것 버그 잡는다고 몇일고생을 했네요 *^^* 휴~~~~~~!
이걸 참조하셔서 좋은스킨 많이 만들어주세요 *^^*
추천
10
10
댓글 전체
감사합니다.
newlist함수가 없다고 나오는군요.... 아무래도 $reldir="http://www.....com이부분 설정을 잘못하신듯합니다.
찾지를 못하는것 보니깐...*^^*
찾지를 못하는것 보니깐...*^^*
Fatal error: Call to undefined function: newlist() in /home/....../public_html/list_skin/test2.php on line 9
똑같은 에러가....
똑같은 에러가....
혹 절대값주소때문에 문제생기시는분은 알려주세요~ *^^*
Fatal error: Call to undefined function: newlist() in /home/......./public_html/list_skin/test2.php on line 9
에러가 나는 것 같은데요??
에러가 나는 것 같은데요??
<?
$reldir="http://www...........com";
require_once "$reldir/lib.inc.php";
require_once "$reldir/userlib.inc.php";
?>
<table width=100%><tr>
<td valign=top><? newlist("photo_list","album", "포토게시판", 5, 25); ?> </td>
</tr>
</table>
위의 내용으로 테스트를 했어여*^^*
$reldir="http://www...........com";
require_once "$reldir/lib.inc.php";
require_once "$reldir/userlib.inc.php";
?>
<table width=100%><tr>
<td valign=top><? newlist("photo_list","album", "포토게시판", 5, 25); ?> </td>
</tr>
</table>
위의 내용으로 테스트를 했어여*^^*