게시판 정렬 및 최신글 순서.. > 그누4 질문답변

그누4 질문답변

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

게시판 정렬 및 최신글 순서.. 정보

게시판 정렬 및 최신글 순서..

본문

1.
2079874253_vPrAn15D_111.JPG

$style_name = "mw-latest-list-$bo_table-$rows-$subject_len";
?>
<style type="text/css">
.<?=$style_name?> { width:45%; border:1px solid #e1e1e1; text-align:left; }
.<?=$style_name?> .subject { background:url(<?=$latest_skin_path?>/img/box-bg.gif); height:20px; margin:0 0 7px 0; }
.<?=$style_name?> .subject .bo_table { margin:4px 0 0 2px; float:left; }
.<?=$style_name?> .subject .bo_table a { font-size:12px; color:#555; font-weight:bold; letter-spacing:-1px; text-decoration:none; }
.<?=$style_name?> .subject .list { margin:5px 5px 0 0; float:right; }
.<?=$style_name?> .subject .list a { font-weight:normal; font-size:11px; letter-spacing:-1px; color:#555; }
.<?=$style_name?> ul { margin:5px 0 7px 10px; padding:0; list-style:none; }
.<?=$style_name?> ul li { margin:0; padding:0 0 0 7px; background:url(<?=$latest_skin_path?>/img/dot.gif) no-repeat 0 5px; height:20px; }
.<?=$style_name?> ul li a:hover { color:#438A01; text-decoration:underline; }
.<?=$style_name?> .file-img { width:70px; height:50px; border:2px solid #e2e2e2; }
.<?=$style_name?> .file-subject { line-height:15px; font-size:11px; letter-spacing:-1px; width:100px; height:28px; margin:3px 0 0 0; overflow:hidden; }
.<?=$style_name?> .file a:hover { color:#438A01; text-decoration:underline; }
.<?=$style_name?> .line { font-size:1px; line-height:1px; height:1px; border-bottom:1px dotted #e1e1e1; margin-bottom:10px; }
</style>
 
 
 
어떻게 수정해야 두줄로 나오나요? 

-----------------------------------------

 
2.
 

bbs-new.php


<?
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 = "[re] ";
        $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] = "bbs/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]/skin/new/$config[cf_new_skin]";

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

include_once("$new_skin_path/new.skin.php");

include_once("./_tail.php");
?> 

 

2. 이용안내-최신글의 순서를..
게시판관리에서 리스트 정렬 처럼.. 정렬 순서를 바꾸는게
어디에 있나요?
wr_last_desc(최근글 최근것 부터) 순서로 바꾸고 싶습니다. 

 
 
3. 이용안내-최신글의.. 코멘트는 나오지 않게 바꾸고
싶은데.. 어떻게 수정해야 되는지 모르겠습니다

댓글 전체

원글부분  if ($row[wr_id] == $row[wr_parent]) // 원글 라인과
해당하는 {,} 삭제
 else {~}// 코멘트부분({부터 }까지) 삭제하세요 그럼 원글만 표시됩니다.
순서는 $sql_order = " order by a.bn_id desc "; 부분을 맞게 수정하시면 되는데
기본이 최신글 순서 입니다. 최신글이 맨 위에요..
아무튼 저 부분 수정하시면 다른 순서로 정렬 가능합니다.
그리고, 두줄 출력은 뭘 두줄 출력하시겠다는것인지 모르겠네요.ㅋ...
답변 정말 감사드립니다. (__)
두줄출력은 위에 그림을 보시면, 게시판들이 세로로 길게 출력되는데
이것을 2열 종대로 보이도록 하고 싶습니다. (__)
.mw-latest-list-B01-5-50 { width:45%; border:1px solid #e1e1e1; text-align:left;float:left; } 이런식으로

내부스타일시트 .mw-latest-list-B(01~7) 번까지 ( float:left;)<==이늠추가

지금보니 위에 소스에서는
.<?=$style_name?> { width:45%; border:1px solid #e1e1e1; text-align:left; float:left;} 에해당되겠네요
그리고, 원글부분  if ($row[wr_id] == $row[wr_parent]) // 원글
라인과 해당하는 {,} 삭제라고 말씀 하셨는데..
원글을 삭제 하니까 오류가 뜨던데. 제가 아직 지식이 부족해서 정확히
어떤걸 고쳐야 되는지 모르겠어요
좀 도와주세요..
그럼 그냥 맨위에 sql문 위에 $view = "w" 를 밖아 버리셔도 될듯..ㅋ...
그렇지 않으면 이것 저것 수정해야 해요..ㅋ..

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 ";
(11~14)를 지우고,
$sql_common .= " and a.wr_id = a.wr_parent ";
로 변경


    if ($row[wr_id] == $row[wr_parent]) // 원글
    {
(48,49라인) 삭제
}
    else // 코멘트
    {
부터~} (63라인~ 84라인)까지 삭제하시면, 코멘트를 선택하든, 원글을 선택하든
원글만 출렵 됩니다..ㅋ...

원래는 셀렉 박스에서 원글, 코멘트 선택해서 검색할 수도 있다는..ㅎ...
코멘트만 나옵니다~! 정말 대단하십니다 (__)
일주일 넘게 머리가 복잡했는데.. 덕분에 모두 해결되어
버렸습니다. 머라고 감사 드려야 될지 모르겠습니다
(__) ^^
$sql_order = " order by a.bn_id desc "; 부분을 맞게 수정하시면 되는데
기본이 최신글 순서 입니다.

----------------------------------------
죄송하지만, 추가질문 하나만 드릴게요.
지금 최신주제가 가장위로 보여지는데.. 여기서 추가적으로 리플이 달린 글이
있으면 플로트 형식처럼 주제가 가장위로 올라오게 가능할까요?
관리자 설정에서 주제정렬을 "wr_last_desc(최근글 최근것 부터)"로 하니까
제가말한 것처럼 게시판에서 보여지던데.. 최신글도 이것처럼 가능한가요?
$sql_order = " order by a.bn_id desc ";  을
$sql_order = " order by a.wr_last_desc"; 로 바꿔봤는데..
오류가 뜨네요. --;
아....그건 다른방식으로 변경해야 할듯 싶네요..
우선 wr_last 자체가 a,b,c 아무데도 없어요.ㅋ...
그래서 에러가 나는겁니다.
덧글 달린걸 위로 올리는건 고민은 따로 해봐야겠네요...
new테이블을 뜯어 고치든지..(덧글달면 시간 변경되게..)해서 작업을 하든지,
새로운 조건을 줘야 겠네요..
전체 66,554 |RSS
그누4 질문답변 내용 검색

회원로그인

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