Skip to content

그누보드4(G4) 변수들

Tip 조회 수 49180 추천 수 0 2013.01.22 02:02:42
==========================  board/basic/list.skin.php  ================================

1. 카테고리 불러오기
<? if ($is_category) { ?>
<a href="<?=$list[$i][ca_name_href]?>"><?=$list[$i][ca_name]?></a>
<? } ?>

2. 글작성일
<?=$list[$i][datetime]?>

3. 링크1 방문자수
<?=$list[$i][wr_link1_hit]?>

4. 조회수
<?=$list[$i][wr_hit]?>

5. 이미지출력
<?
$image = urlencode($list[$i][file][0][file]);
if (preg_match("/\.(gif|jpg|png)$/i", $image)) {  // 첫번째 파일이 이미지라면 ?>
<a href='<?=$list[$i][href]?>'><img src='<?=$g4[path]?>/data/file/<?=$bo_table?>/<?=$image?>' width='100' title='<?=$list[$i][wr_subject]?>' border=1 style='border-color:#dddbdb;'></a>
<? } ?>

6. 이미지출력(noimage)
<?
$image = urlencode($list[$i][file][0][file]);
if (preg_match("/\.(gif|jpg|png)$/i", $image)) {  // 첫번째 파일이 이미지라면 ?>
<a href='<?=$list[$i][href]?>'><img src='<?=$g4[path]?>/data/file/<?=$bo_table?>/<?=$image?>' width='$image_width' height='$image_height' title='<?=$list[$i][wr_subject]?>' border=1 style='border-color:#dddbdb;'></a>
<? } else { ?>
<img src='<?=$board_skin_path?>/img/noimage.gif' width='$image_width' height='$image_height' style='border:#cdcdcd solid 1px'></a>
<? } ?>

7. 지정한 길이만큼 자르기
<?=cut_str($list[$i][wr_content],300,"...");?>

8. 링크1 출력
<? if ($list[$i][wr_link1]) { ?>
<a href='<?=$list[$i][link_href][1]?>' target=_blank><?=cut_str($list[$i][wr_link1], 35)?></a>
<?}?>

9. 현재위치표시
<!-- 현재위치표시 -->
현재위치 : <a href='<?=$g4[path]?>'>Home</a>
<?
if($bo_table) {  //게시판에 들어 갔을 경우
if($group[gr_subject]!=''){ echo " > <a href='$g4[path]/bbs/group.php?gr_id=$group[gr_id]'>$group[gr_subject]</a>"; }// 그룹이름 출력
if($board[bo_subject]!='') {                                      // 게시판이름 출력
echo " > <a href='$g4[path]/bbs/board.php?bo_table=$board[bo_table]'>$board[bo_subject]</a>";
}
} else {
echo " >$html_title"; }//일반페이지에 접속했을 경우
// echo cut_str($write[wr_subject], 25);  // 게시물 제목 출력, 현재는 미표시, #제거하면 표시
?>

<? if ($is_category) { ?>
 > <select name=sca onchange="location='<?=$category_location?>'+this.value;"><option value=''>전체</option><?=$category_option?></select>
<? } ?>

10. 한줄 카테고리 (1)
<? if ($is_category) {  ?>

<?
    $cnt = 1;
    $sql = " SELECT bo_category_list FROM $g4[board_table] WHERE bo_table = '$bo_table' ";
    $row = sql_fetch($sql);
    $arr = explode("|", $row[bo_category_list]); // 구분자가 , 로 되어 있음
    $str = "";
    $str .= "<tr>";
    for ($i=0; $i<count($arr); $i++)
        if (trim($arr[$i]))  {
$sql1 = " SELECT count(*) as cCount FROM $write_table WHERE ca_name = '$arr[$i]' and wr_comment >= 0 ";
    $row1 = sql_fetch($sql1);       
            $str .= "<td><a href='./board.php?bo_table=$bo_table&sca=$arr[$i]'>$arr[$i] ($row1[cCount])</a></td>";
if ($cnt == $cnt_bo_1) { $cnt = 0; $str .= "</tr><tr>"; }
    $cnt++;
    }
   
    $sql2 = " SELECT count(*) as cCount FROM $write_table WHERE wr_comment >= 0 ";
    $row2 = sql_fetch($sql2);
    $Total_Cat = $row2[cCount]
?>

<table width=100% border=0 cellspacing=0 cellpadding=0>
<tr><td class=list_line style="height:2px;"></td></tr>
</table>

<table width=99% cellspacing=1 cellpadding=4>
<col width=100></col>
<col width=8></col>
<col width=10></col>
<col width=></col>
<tr valign=top bgcolor=white>
<td>
<table width=100% border=0 cellspacing=0 cellpadding=0 style=table-layout:fixed>
<tr>
<td align=center><NOBR><a href='./board.php?bo_table=<?=$bo_table?>'>전체</a><BR>(<?=$Total_Cat?>)</NOBR></td>
</tr>
</table>
</td>
<td width=8 class=list_line style="padding:0px;"></td>
<td></td>
<td style='word-break:break-all;'>
<table width=100% border=0 cellspacing=0 cellpadding=0>
<tr><td><span class="content"><?=$str?></span></td></tr>
</table>
</td>
</tr>
</table>

<table width=100% border=0 cellspacing=0 cellpadding=0>
<tr><td class="list_line" style="height:1px;"></td></tr>
<tr><td height=10></td></tr>
</table>
<? } ?>

11. 한줄 카테고리 (2)
<? if ($is_category) {  ?>
<?
    $cnt = 1;
    $sql = " SELECT bo_category_list FROM $g4[board_table] WHERE bo_table = '$bo_table' ";
    $row = sql_fetch($sql);
    $arr = explode("|", $row[bo_category_list]); // 구분자가 , 로 되어 있음
    $str .= "";
    for ($i=0; $i<count($arr); $i++)
        if (trim($arr[$i]))  {
$sql1 = " SELECT count(*) as cCount FROM $write_table WHERE ca_name = '$arr[$i]' and wr_comment >= 0 ";
    $row1 = sql_fetch($sql1);       
            $str .= "<a href='./board.php?bo_table=$bo_table&sca=$arr[$i]'>$arr[$i] ($row1[cCount])</a>  ";
if ($cnt == $cnt_bo_1) { $cnt = 0; $str .= ""; }
    $cnt++;
    }
   
    $sql2 = " SELECT count(*) as cCount FROM $write_table WHERE wr_comment >= 0 ";
    $row2 = sql_fetch($sql2);
    $Total_Cat = $row2[cCount]
?>

<a href='./board.php?bo_table=<?=$bo_table?>'>전체(<?=$Total_Cat?>)</a>  <?=$str?>
<? } ?>

12. 여분필드
<?=$list[$i][wr_1]?>

13. 리스트에서 바로 자료 다운
echo "<a href="\".$g4[bbs_path]."/download.php?bo_table=".$bo_table."&wr_id=".$list[$i][wr_id]."&no=".$j."\">";

$j ==>> 첫번째 파일을 받고 싶을경우  $j 대신 1로 대입하면 된다.
//sir 카이루님
===================================================================================

=======================  board/basic/view.skin.php  =========================

1. 작성일
<?=substr($view[wr_datetime],2,14)?>

2. 글쓴이
<?=$view[name]?>

3. 제목
<?=$view[subject]?>

4. 카테고리
<? if ($is_category) { echo ($category_name ? "[$view[ca_name]] " : ""); } ?>

5. IP
<? if ($is_ip_view) { echo " ($ip)"; } ?>

6. 조회
<?=$view[wr_hit]?>

7. 추천
<? if ($is_good) echo "<b>추천</b>($view[wr_good])";?>

8. 비추천
<? if ($is_nogood) echo "<b>비추천</b>($view[wr_nogood])";?>

9. 첨부파일보기 - 일반게시판 -
        <?
        // 파일 출력
        for ($i=0; $i<=count($view[file]); $i++) {
            if ($view[file][$i][view])
                echo $view[file][$i][view] . "<p>";
        }
        ?>

10. 첨부파일보기 - 답사기 형식 -
        <table width=100% border=0 cellpadding=0 cellspacing=0>
        <tr>
        <?
        echo "\n";
        $td_width = (int)(100 / $mod);
        // 파일 출력
        $k = 0;
        for ($i=0; $i<=count($view[file]); $i++)
        {
            if (!$view[file][$i][view]) continue;

            if ($k>0 && $k%$mod==0)
                echo "</tr><tr>\n";

            //preg_match("/\{설명\:$k\:([^\}]*)\}/e", $view[wr_content], $m); echo $m[1];
            echo <<<HEREDOC
            <td width='{$td_width}%' valign=top>
            <table width=100% cellpadding=4>
            <tr><td align=center>{$view[file][$i][view]}</td></tr>
            <tr><td><span class="content">{$view[file][$i][content]}</span></td></tr>
            </table>
            </td>
HEREDOC;
            $k++;
        }
        ?>
        </tr>
        </table>
<script language="JavaScript">
// HTML 로 넘어온 <img ... > 태그의 폭이 테이블폭보다 크다면 테이블폭을 적용한다.
function resize_image()
{
    var target = document.getElementsByName('target_resize_image[]');
    var image_width = parseInt('<?=$image_width?>');
    var image_height = 0;

    for(i=0; i<target.length; i++) {
        // 원래 사이즈를 저장해 놓는다
        target[i].tmp_width  = target[i].width;
        target[i].tmp_height = target[i].height;
        // 이미지 폭이 테이블 폭보다 크다면 테이블폭에 맞춘다
        if(target[i].width > image_width) {
            image_height = parseFloat(target[i].width / target[i].height)
            target[i].width = image_width;
            target[i].height = parseInt(image_width / image_height);
        }
    }
}

window.onload = resize_image;
</script>

11. 추가필드
<?=$view[wr_1]?>

12. 현재글의 스크랩 카운트
<?
// 현재글의 스크랩 카운트를 구한다
$sql = "select count(*) as cnt from $g4[scrap_table] where bo_table='$bo_table' and wr_id = $wr_id";
$row=sql_fetch($sql);
$scrap_count=$row[cnt];
?>

그리고 갯수를 표시하고 싶은곳에 다음처럼 처리한다.

<? if($scrap_count > 0) echo "이글의 스크랩 카운트 : $scrap_count"; ?>

//sir root님

13. 첨부파일 분리
<?
// 첫번째 파일 불러오기
for ($i=0; $i<=0; $i++) {
if ($view[file][$i][view])
echo $view[file][$i][view] . "<p>";
}
?>

<?
// 두번째 파일부터 출력
for ($i=1; $i<=count($view[file]); $i++) {
if ($view[file][$i][view])
echo $view[file][$i][view] . "<p>";
}
?>

<? if ($view[file][1][view]) { //만약 두번째 파일이 있다면 그 이후의 파일들을 출력?>
<table width=100% cellpadding=0 cellspacing=5 bgcolor=efefef><tr><td>
<table width=100% cellpadding=8 cellspacing=0 style='border:1px solid #cccccc'><tr><td bgcolor=ffffff>

        <table width=100% cellpadding=2>
        <tr>
            <td style='word-break:break-all;' class='lh' height=100 valign='top'>
<div align=center>
<?
// 두번째 파일부터 출력
for ($i=1; $i<=count($view[file]); $i++) {
if ($view[file][$i][view])
echo $view[file][$i][view] . "<p>";
}
?>
</div>
            </td>
        </tr>
        </table>
</td></tr></table>
</td></tr></table>

<br>
<? } ?>
<script language="JavaScript">
// HTML 로 넘어온 <img ... > 태그의 폭이 테이블폭보다 크다면 테이블폭을 적용한다.
function resize_image()
{
    var target = document.getElementsByName('target_resize_image[]');
    var image_width = parseInt('<?=$image_width?>');
    var image_height = 0;

    for(i=0; i<target.length; i++) {
        // 원래 사이즈를 저장해 놓는다
        target[i].tmp_width  = target[i].width;
        target[i].tmp_height = target[i].height;
        // 이미지 폭이 테이블 폭보다 크다면 테이블폭에 맞춘다
        if(target[i].width > image_width) {
            image_height = parseFloat(target[i].width / target[i].height)
            target[i].width = image_width;
            target[i].height = parseInt(image_width / image_height);
        }
    }
}

window.onload = resize_image;
</script>
===================================================================================

===========================  board/basic/write.skin.php  ===========================
1. 추가필드
<input name=wr_1 itemname="wr_1" value="<?=$write[wr_1]?>">
//sir root님
===================================================================================

==========================  outlogin/basic/outlogin.skin.2.php  =========================
1. 아웃로그인스킨에서 회원이 스크랩 한 글이 몇개인지
outlogin.skin.2.php 소스의 PHP부분에 아래 소스를 넣고
<?
// 스크랩 전체 갯수알아옴
$scrap = mysql_fetch_array(mysql_query("select count(ms_id) from $g4[scrap_table] where mb_id='$member[mb_id]'"));
$scrap = $scrap[0];
?>

나타낼곳에 아래의 소스 삽입
<a href="javascript:win_scrap();">스크랩 : <?=$scrap?>개</a>

//sir 착한아이님

2. 아웃로그인에 회원 아이콘 보이기
<?
$mb_id=$member[mb_id];
$mb_dir="$g4[path]/data/member/".substr($mb_id,0,2);
$mb_icon="$mb_dir/$mb_id.gif";
if(file_exists($mb_icon)) $mb_icon="<img src="\"$mb_dir/$mb_id.gif\" border=0 alt=$mb_id align=absmiddle>";
else $mb_icon="";
?>
<strong><?=$mb_icon?> <?=$nick?></strong>님

//sir 그리고님
===================================================================================

=========================  member/basic/register_form.skin.php ====================
1. 여분필드(mb_x) 회원 가입/수정에 사용하기
<input type=text name='mb_1' itemname='mb_1' value='<?=$member[mb_1]?>'>
<input type=text name='mb_2' itemname='mb_2' value='<?=$member[mb_2]?>'>

2. 여분필드(mb_x) input type이 checkbox인것
<input type=checkbox name=mb_1 value='1' <?=($w=='' || $member[mb_1])?'checked':'';?>>mb_1
<input type=checkbox name=mb_2 value='1' <?=($w=='' || $member[mb_2])?'checked':'';?>>mb_2
========================================================================================

=========================  일반페이지 ====================
1. 지정레벨 이하면 경고문구
<?
if ($member[mb_level] < 5) {
    echo "
    <script language='javascript'>
        alert('지정된 회원만 이용가능합니다.');
        history.go(-1);
    </script>";
    exit;
}
?>
========================================================================================

===================  G4에서 가, 감 및 변경된 변수와 필드들(g3 => g4)  ======================

$cfg[write_table_prefix] => $g4[write_prefix]
mysql_fetch_array => sql_fetch_array
$sselect => $sfl
$stext => $stx
$ssort => $sst
$sorder => $sod

$cfg[write_table_prefix] = "gb_write_"; // 게시판 테이블의 접두사
=>
$g4[table_prefix]        = "g4_"; // 테이블명 접두사
$g4[write_prefix]        = $g4[table_prefix] . "write_"; // 게시판 테이블명 접두사

변경된 테이블
$cfg[table_default]            =>  $g4[config_table]        // 기본환경설정 테이블
$cfg[table_group]              =>  $g4[group_table]        // 그룹 설정 테이블
$cfg[table_group_member] =>  $g4[group_member_table]  // 그룹회원 설정 테이블
$cfg[table_board]              =>  $g4[board_table]          // 게시판 설정 테이블
$cfg[table_login]              =>  $g4[login_table]          // 로그인 테이블 (접속자수)
$cfg[table_member]          =>  $g4[member_table]        // 회원 테이블
$cfg[table_memo]            =>  $g4[memo_table]          // 메모 테이블
$cfg[table_zip]                  =>  $g4[zip_table]            // 우편번호 테이블
$cfg[table_vote]                =>  $g4[poll_table]          // 투표 테이블
$cfg[table_vote_etc]          =>  $g4[poll_etc_table]      // 투표 기타의견 테이블
$cfg[table_point]              =>  $g4[point_table]          // 포인트 테이블
$cfg[table_count]              =>  $g4[visit_table]        // 카운터 테이블
$cfg[table_count_sum]      =>  $g4[visit_sum_table]      // 카운터 합계 테이블

추가된 테이블
$g4[auth_table]              =  $g4[table_prefix] . "auth";          // 관리권한 설정 테이블
$g4[board_file_table]      =  $g4[table_prefix] . "board_file";    // 게시판 첨부파일 테이블
$g4[board_new_table]    =  $g4[table_prefix] . "board_new";    // 게시판 새글 테이블
$g4[mail_table]              =  $g4[table_prefix] . "mail";          // 회원메일 테이블
$g4[popular_table]          =  $g4[table_prefix] . "popular";      // 인기검색어 테이블
$g4[scrap_table]            =  $g4[table_prefix] . "scrap";        // 게시글 스크랩 테이블

bo_total_count => bo_count_write
                    => bo_count_comment

bo_gallery_width => bo_gallery_cols
{$cfg[write_table_prefix]}{$row[bo_table]} => {$g4[write_prefix]}{$row[bo_table]}

글 : wr_is_comment = 0, wr_comment > 0
코멘트 : wr_is_comment = 1, wr_comment < 0

///////////////////////////////////////////////////////////// 
profile

I see no changes, wake up in the morning and I ask myself

Is life worth living should I blast myself

Things would never be the same.

엮인글 :
http://adminplay.com/166163/f96/trackback
List of Articles
번호 제목 글쓴이 날짜 조회 수

Tip 마우스 드래그시 영역 색상 변경 [selection pseudo-element(dropped)] file

  • l2zeo
  • 2013-01-23
  • 조회 수 4234

Tip css 폰트 설정시 브라우저 제약없이 비슷하게 보이게 하는방법은?? file

  • l2zeo
  • 2013-01-23
  • 조회 수 5274

Tip 그누보드4(G4) 변수들

  • l2zeo
  • 2013-01-22
  • 조회 수 49180

Tip DTD(Document Type Definition) 란?

  • l2zeo
  • 2012-10-02
  • 조회 수 5258

Tip 서버이전후 Warning: Cannot modify header information - headers already sent by... 뜰때

  • l2zeo
  • 2012-09-30
  • 조회 수 7876

Tip 그누보드내에서 링크를 이용할때 \ 값이 자동 생성될때는?

  • l2zeo
  • 2012-09-30
  • 조회 수 5229

Tip SSL 보안인증 로그인,회원가입 적용하기 [1]

  • l2zeo
  • 2012-08-15
  • 조회 수 11800

Tip 출석시 과거 특정날짜 자동출석 인정하는 방법 - 미션출석부

  • l2zeo
  • 2012-03-12
  • 조회 수 9322

최적화 그누보드에서 효율적으로 디비에 쿼리수 줄이기

Tip 그누보드 회원 포인트 일괄삭제 하기 (mb_point + 포인트 내역)

Tip 오늘의 주인공 onfocus="this.blur();"와 a:visited를 소개합니다.

Tip 공지사항 리스트에 이중 출력 안되도록.

Tip 포인트 반복 차감 기간 제한

Tip 투표(설문) 새창 띄우기

플러그인 네이버 스타일 아웃로그인 스킨(?) file

Tip 효율적으로 디비 쿼리수 줄이기 Tip

플러그인 코멘트 Ajax 처리 - 아직도 코멘트(댓글)쓰고 전체 페이지 로딩되나요?

플러그인 게시물 순위를 이전과 비교해서 등수 출력 file

플러그인 게시판의 정렬을 이용한 최신글 file

플러그인 그누보드 내글 모니터 (쿠키 및 구글 스타일 변환) file

Copyright ADMINPLAY corp. All rights reserved.

abcXYZ, 세종대왕,1234

abcXYZ, 세종대왕,1234