최신글(bbs/new.php) 소스 응용해서 '내글보기' 만드는 방법 > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

최신글(bbs/new.php) 소스 응용해서 '내글보기' 만드는 방법 정보

최신글(bbs/new.php) 소스 응용해서 '내글보기' 만드는 방법

본문

아시다시피 new.php 는 모든회원들의 글을 리스트하거나, 자기아이디나 다른사람아이디 검색을 통해서 리스트화하는 방식입니다. 이 소스를 응용해서, 검색을 통하지 않고 자기글과 코멘트를 페이지를 열음과 동시에 나열하고 싶은데요. 고수분들의 답변 기대하겠습니다 (_ _) 어제 나르세드님이 보시면 좋으련만 ㅎㅎ
스킨파일쪽에서, input에 value값에 member[mb_id] 걸어놓고, 자동으로 페이지열리면서 엔터처리되서 넘기는 방법이 있나했는데 그건 못찾겠네요 .그렇게하면 input에 히든처리해서 같은 효과를 볼수도있을거같은데..흠.. 애시당초 소스를 바꾸는 방법이 있으면 더 좋겠네요
(_ _)플리즈..




<?
include_once("_common.php");

$g4[title] = "최근 게시물";
include_once("_head.php");


$sql_common = " from $g4[board_new_table] a, $g4[board_table] b, $g4[group_table] c
              where a.bo_table = b.bo_table and b.gr_id = c.gr_id and b.bo_use_search = '1' ";
if ($gr_id)
    $sql_common .= " and b.gr_id = '$gr_id' ";
if ($view == "w")
    $sql_common .= " and a.wr_id = a.wr_parent ";
else if ($view == "c")
    $sql_common .= " and a.wr_id <> a.wr_parent ";
if ($mb_id)
    $sql_common .= " and a.mb_id = '$mb_id' ";
$sql_order = " order by a.bn_id desc ";

$sql = " select count(*) as cnt $sql_common ";
$row = sql_fetch($sql);
$total_count = $row[cnt];

$rows = $config[cf_new_rows];
$total_page  = ceil($total_count / $rows);  // 전체 페이지 계산
if (!$page) $page = 1; // 페이지가 없으면 첫 페이지 (1 페이지)
$from_record = ($page - 1) * $rows; // 시작 열을 구함

$group_select = "<select name=gr_id id=gr_id onchange='select_change();'><option value=''>전체그룹";
$sql = " select gr_id, gr_subject from $g4[group_table] order by gr_id ";
$result = sql_query($sql);
for ($i=0; $row=sql_fetch_array($result); $i++)
{
    $group_select .= "<option value='$row[gr_id]'>$row[gr_subject]";
}
$group_select .= "</select>";


$list = array();
$sql = " select a.*, b.bo_subject, c.gr_subject, c.gr_id
          $sql_common
          $sql_order
          limit $from_record, $rows ";
$result = sql_query($sql);
for ($i=0; $row=sql_fetch_array($result); $i++)
{
    $tmp_write_table = $g4[write_prefix] . $row[bo_table];

    if ($row[wr_id] == $row[wr_parent]) // 원글
    {
        $comment = "";
        $comment_link = "";
        $row2 = sql_fetch(" select * from $tmp_write_table where wr_id = '$row[wr_id]' ");
        $list[$i] = $row2;

        $name = get_sideview($row2[mb_id], cut_str($row2[wr_name], $config[cf_cut_name]), $row2[wr_email], $row2[wr_homepage]);
        // 당일인 경우 시간으로 표시함
        $datetime = substr($row2[wr_datetime],0,10);
        $datetime2 = $row2[wr_datetime];
        if ($datetime == $g4[time_ymd])
            $datetime2 = substr($datetime2,11,5);
        else
            $datetime2 = substr($datetime2,5,5);

    }
    else // 코멘트
    {
        $comment = "[코] ";
        $comment_link = "#c_{$row[wr_id]}";
        $row2 = sql_fetch(" select * from $tmp_write_table where wr_id = '$row[wr_parent]' ");
        $row3 = sql_fetch(" select mb_id, wr_name, wr_email, wr_homepage, wr_datetime from $tmp_write_table where wr_id = '$row[wr_id]' ");
        $list[$i] = $row2;
        $list[$i][mb_id] = $row3[mb_id];
        $list[$i][wr_name] = $row3[wr_name];
        $list[$i][wr_email] = $row3[wr_email];
        $list[$i][wr_homepage] = $row3[wr_homepage];

        $name = get_sideview($row3[mb_id], cut_str($row3[wr_name], $config[cf_cut_name]), $row3[wr_email], $row3[wr_homepage]);
        // 당일인 경우 시간으로 표시함
        $datetime = substr($row3[wr_datetime],0,10);
        $datetime2 = $row3[wr_datetime];
        if ($datetime == $g4[time_ymd])
            $datetime2 = substr($datetime2,11,5);
        else
            $datetime2 = substr($datetime2,5,5);
    }

    $list[$i][gr_id] = $row[gr_id];
    $list[$i][bo_table] = $row[bo_table];
    $list[$i][name] = $name;
    $list[$i][comment] = $comment;
    $list[$i][href] = "./board.php?bo_table=$row[bo_table]&wr_id=$row2[wr_id]{$comment_link}";
    $list[$i][datetime] = $datetime;
    $list[$i][datetime2] = $datetime2;

    $list[$i][gr_subject] = $row[gr_subject];
    $list[$i][bo_subject] = $row[bo_subject];
    $list[$i][wr_subject] = $row2[wr_subject];
}

$write_pages = get_paging($config[cf_write_pages], $page, $total_page, "?gr_id=$gr_id&view=$view&mb_id=$mb_id&page=");

$new_skin_path = "$g4[path]/page/mypage/my_write/$config[cf_new_skin]";

echo "<script type=\"text/javascript\" src=\"$g4[path]/js/sideview.js\"></script>\n";

include_once("$g4[path]/page/mypage/my_entry/my_write/new.skin.php");

include_once("_tail.php");
?>

댓글 전체

폼에 히든으로 넣거 어쩌고 할 필요없이 그냥 링크만 만들어주면 됩니다
<a href='<?=$g4[bbs_path]?>/new.php?mb_id=<?=$member[mb_id]?>'>자기글보기</a>

스킨파일쪽에서, input에 value값에 member[mb_id] 걸어놓고, 자동으로 페이지열리면서 엔터처리되서 넘기는 방법이 있나했는데 그건 못찾겠네요 <--- 이렇게 하려면
<form name='new' method='post' action='<?=$g4[bbs_path]?>/new.php'>
<input type='hidden' name='mb_id' value='<?=$member[mb_id]?>'>
</form>
<script>document.new.submit();</script>

이렇게하면 되지만 그럴 이유가 없죠 뭐
<?
include_once("./_common.php");

$g4[title] = "최근 게시물";
include_once("./_head.php");

$mb_id = $_GET['mb_id'];
if(!$mb_id){
$mb_id = $_POST['mb_id'];
if(!$mb_id){
$mb_id = $member[mb_id];
}
}


new.php 맨위에 이거 넣어보세요.
자동으로 new.php에서 로그인한 사람껏만 검색목록으로 나옵니다.
전체 66,554 |RSS
그누4 질문답변 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT