최근글 뽑기에서 > 그누3질답

그누3질답

최근글 뽑기에서 정보

그누보드 최근글 뽑기에서

본문

http://sir.co.kr/?doc=bbs/gnuboard.php&bo_table=tiptech&sselect=wr_name&stext=%C7%D0%BD%C4&soperator=1&page=1&wr_id=859
학식님이 팁앤테크에 올려주신 내용입니다.
다운받긴 했는데...
어찌 적용하는지를 모르겠네요
어느 계정으로 올려야 하는지...
또 어찌 적용하는지...
답변 부탁드립니다~~
  • 복사

댓글 전체

<?
include("./lib/latest.lib.php");

define("_DOCTYPE_", "STYLE");

$begin_time = get_microtime();

$html_title = "새글만 보기";
include("./bbs/gblayer.php");

include("./head.php");
?>

<!--link rel='stylesheet' href="<?=//$gnu_path.$bbsdir?>/skin/board/chomi_03news/style.skin.css" type="text/css"-->

<table width="98%" cellpadding=0 cellspacing=0 align=center>
<tr>
    <td width='' valign=top>

<?
$limit = 10; // 쿼리에서 limit 로 뽑아올 갯수

// TEMPORARY TABLE MAKE
$tmp_make = mysql_query("create temporary table tmp (
  bo_table varchar(20) NOT NULL default '',
  bo_subject varchar(255) NOT NULL default '',
  wr_id int(11) NOT NULL auto_increment,
  ca_id int(11) NOT NULL default '0',
  wr_notice tinyint(4) NOT NULL default '0',
  wr_num int(11) NOT NULL default '0',
  wr_reply varchar(5) NOT NULL default '',
  wr_parent_id int(11) NOT NULL default '0',
  wr_comment int(11) NOT NULL default '0',
  wr_commentcnt int(11) NOT NULL default '0',
  wr_html tinyint(4) NOT NULL default '0',
  wr_secret tinyint(4) NOT NULL default '0',
  wr_recv_email tinyint(4) NOT NULL default '0',
  wr_subject varchar(255) NOT NULL default '',
  wr_content text NOT NULL,
  wr_link1 varchar(255) NOT NULL default '',
  wr_link2 varchar(255) NOT NULL default '',
  wr_link1_hit int(11) NOT NULL default '0',
  wr_link2_hit int(11) NOT NULL default '0',
  wr_file1 varchar(255) NOT NULL default '',
  wr_file2 varchar(255) NOT NULL default '',
  wr_file1_source varchar(255) NOT NULL default '',
  wr_file2_source varchar(255) NOT NULL default '',
  wr_file1_download int(11) NOT NULL default '0',
  wr_file2_download int(11) NOT NULL default '0',
  wr_hit int(11) NOT NULL default '0',
  wr_good int(11) NOT NULL default '0',
  wr_nogood int(11) NOT NULL default '0',
  mb_id varchar(20) NOT NULL default '',
  wr_passwd varchar(16) NOT NULL default '',
  wr_name varchar(20) NOT NULL default '',
  wr_email varchar(255) NOT NULL default '',
  wr_homepage varchar(255) NOT NULL default '',
  wr_datetime datetime NOT NULL default '0000-00-00 00:00:00',
  wr_ip varchar(15) NOT NULL default '',
  wr_user_agent varchar(255) NOT NULL default '',
  wr_update_datetime datetime NOT NULL default '0000-00-00 00:00:00',
  wr_update_ip varchar(15) NOT NULL default '',
  wr_update_user_agent varchar(255) NOT NULL default '',
  PRIMARY KEY  (wr_id),
  KEY index1 (wr_notice,wr_num,wr_reply),
  KEY index2 (wr_num,wr_parent_id),
  KEY index3 (wr_datetime)
        )");

// 게시판 환경 설정 테이블에서 각 게시판 BOARD 가져오기
$sql = " select a.bo_subject, a.bo_table, b.gr_subject
          from $cfg[table_board] a, $cfg[table_group] b
          where a.gr_id = b.gr_id /*AND b.gr_id = '그룹명'*/
          order by b.gr_id, a.bo_table ";
  $result = sql_query($sql);
$테이블수 = mysql_num_rows($result);
$sql_limit = intval($limit/$테이블수) + 2;

// BOARD 별로 게시판 돌면서 검색한다
while($row = mysql_fetch_array($result)) {
    $tbl = "{$cfg[write_table_prefix]}{$row[bo_table]}";

$sql2 = " select a.wr_id,
                    a.wr_parent_id,
                    a.mb_id,
                    a.wr_name,
                    a.wr_email,
                    a.wr_num,
                    a.wr_subject,
                    a.wr_comment,
                    a.wr_commentcnt,
                    a.wr_datetime,
                    b.mb_icon
                from $tbl a left join $cfg[table_member] b on (a.mb_id = b.mb_id)
where a.wr_comment = 0
                order by a.wr_id desc
limit $sql_limit";
$result2 = sql_query($sql2);


    // 검색 결과를 TEMPORARY 테이블에 집어 넣는다.
    for ($i = 0; $row2 = mysql_fetch_array($result2); $i++) {
        if ($row2[wr_comment] > 0) {
            $sql3 = " select wr_subject
                        from $tbl
                      where wr_comment = 0 and wr_parent_id = '$row2[wr_parent_id]' ";
            $row3 = sql_fetch_array($sql3);
            $wr_subject = $row3[wr_subject];
        } else {
            $wr_subject = $row2[wr_subject];
        }

sql_query("INSERT tmp SET
  bo_table = '$row[bo_table]',
  bo_subject = '$row[bo_subject]',
  ca_id = '$row2[ca_id]',
  wr_notice = '$row2[wr_notice]',
  wr_num = '$row2[wr_num]',
  wr_reply = '$row2[wr_reply]',
  wr_parent_id = '$row2[wr_parent_id]',
  wr_comment = '$row2[wr_comment]',
  wr_commentcnt = '$row2[wr_commentcnt]',
  wr_html = '$row2[wr_html]',
  wr_secret = '$row2[wr_secret]',
  wr_recv_email = '$row2[wr_recv_email]',
  wr_subject = '".get_text(cut_str($wr_subject,65,'…'))."',
  wr_content = '$row2[wr_content]',
  wr_link1 = '$row2[wr_link1]',
  wr_link2 = '$row2[wr_link2]',
  wr_link1_hit = '$row2[wr_link1_hit]',
  wr_link2_hit = '$row2[wr_link2_hit]',
  wr_file1 = '$row2[wr_file1]',
  wr_file2 = '$row2[wr_file2]',
  wr_file1_source = '$row2[wr_file1_source]',
  wr_file2_source = '$row2[wr_file2_source]',
  wr_file1_download = '$row2[wr_file1_download]',
  wr_file2_download = '$row2[wr_file2_download]',
  wr_hit = '$row2[wr_hit]',
  wr_good = '$row2[wr_good]',
  wr_nogood = '$row2[wr_nogood]',
  mb_id = '$row2[mb_id]',
  wr_passwd = '$row2[wr_passwd]',
  wr_name = '".get_text(cut_str($row2[wr_name],12))."',
  wr_email = '$row2[wr_email]',
  wr_homepage = '$row2[wr_homepage]',
  wr_datetime = '$row2[wr_datetime]',
  wr_ip = '$row2[wr_ip]',
  wr_user_agent = '$row2[wr_user_agent]',
  wr_update_datetime = '$row2[wr_update_datetime]',
  wr_update_ip = '$row2[wr_update_ip]',
  wr_update_user_agent = '$row2[wr_update_user_agent]'
        ");
    }
    mysql_free_result($result2);
}
mysql_free_result($result);

// TEMPORARY 테이블 정보 가져오기
$result = sql_query("SELECT * FROM tmp ORDER BY wr_datetime DESC LIMIT $limit");

?>

<table width=100% cellspacing=3 cellpadding=2 align=center>
<tr><td colspan=3 background="<?=$gnu_path?>image/line_width.gif"></td></tr>
<tr>
    <td height=30 bgcolor=EEEEEE colspan=3 align=center>&nbsp; <b><font color=1079DE>새로 올라온 글 <?=$limit?></font></b></td>
</tr>
<tr><td colspan=3 background='<?=$gnu_path?>image/line_width.gif'></td></tr>

<?
// 보여주기
if(mysql_num_rows($result) != 0) {

    while($row = mysql_fetch_assoc($result)) {
        $comment = "";
        $atag_comment = "";
        if ($row[wr_comment] > 0) {
            $comment = "<span style='font-size:8pt;'>[c]</span> ";
            $atag_comment = "#c{$row[wr_id]}";
        }

        $commentcnt = "";
        if ($row[wr_commentcnt] > 0)
            $commentcnt = "<font size=-2>({$row[wr_commentcnt]})</font>";

        $wr_name = gblayer($row[mb_id], $row[wr_name], $row[wr_email]);

        echo "<tr>";
        echo "<td width='120' align=''><font color=gray>["./*$row[bo_subject]*/$row[wr_datetime]."]</font></td>";
        echo "<td>&nbsp; <a href='./?doc=$cfg[bbs_dir]/gnuboard.php&bo_table=".$row[bo_table]."&wr_id=".$row[wr_parent_id]."$atag_comment'>";
        echo "<font color=#222222>$comment{$row[wr_subject]} {$commentcnt}</font></a></td>";
        echo "<td width='100' align=center>$mb_icon$wr_name$admin_icon</td>";
        echo "</tr>";

        echo "<tr><td colspan=3 background='{$gnu_path}image/line_width.gif'></td></tr>";
    }
} else echo "<td height=25 align=center>등록된 글이 없습니다.</td>";

?>
</table>

</td>
</tr>
</table>

<?
mysql_free_result($result);
mysql_query("DROP TABLE tmp");

include("./tail.php");

include($gnu_path."head.sub.php");

/*// 실행시간 측정
$run_time = get_microtime() - $begin_time;
echo($run_time); */

?>

를 임의의 이름으로 저장 합니다. 예) new_tmp.php
new_tmp.php 를 그누폴더 폴더에 업로드 합니다.

주소창에 http://홈주소/그누폴더/?doc=tools/new_tmp.php 식으로 호출을 합니다.

미리보기 > http://www.slgi.co.kr/gnu3/?doc=tools/new_tmp.php

기타 세부설정 사항은 링크해 주신 내용을 참고해 보시기 바랍니다.
몇군데 에러나는것만 수정해서 올려 봅니다.
음 .... 예전에 봤던 자료인데 적용은 해본적이 없습니다.
지금 외부라 테스트 해 보기는 그렇구요. 일단 짬 나시는대로 작업해 보시기
바랍니다. 차근히 읽어 보시면서 .... 전 내일 오전/오후(일찍?) 시도해 봐야
겠습니다. 좋은 밤 보내세요.
© SIRSOFT
현재 페이지 제일 처음으로