스케줄 최근게시물입니다. > 그누3 스킨

그누3 스킨

스케줄 최근게시물입니다. 정보

최신글 스케줄 최근게시물입니다.

첨부파일

me_latest_schedule.zip (2.7K) 146회 다운로드 2004-03-02 03:35:36

본문

*****************************************************
*  주의: '스케줄 게시판' 과 더불어 사용하셔야 합니다
*  밑에 파일에 함수를 삽입하신 후에
*  꼭!!  latest_schedule( ) 로 불러 주세요.
*****************************************************
앞서 올린 '스케줄 보드 게시판'을 위해서 만들어 놓은  '전용 최신글' 입니다.

오늘 날짜까지 최근 게시물로 표시를 하구요.
스케줄을 기록한 날에 상관없이 오늘날짜에 가까운 것을 표기합니다.

에~ 사용하시면 편리함을 느끼실 수도 있을 듯...  ㅋㅋ  - ,. -

참 이걸 사용하려면
developer.lib.php 에 다음을 추가하고 호출해서 사용하세요.
주석으로 달린 너저분한거 지우고 사용하세요 ^^;
---> 추가할 내용

// ########################################################
// ####  최근 스케줄( 오늘에 가까운 스케줄) 뽑기 함수.
// ########################################################
// 절대 세트로 되어 있는 최근게시물과 스케줄 게시판을 같이 써야지만 제대로 동작한다.
//  latest_schedule(스킨이름,게시판아이디,표시할 갯수,약속이 하루 일때 글수 , 약속이 이틀 이상일때 글자수 )
function latest_schedule($skin_dir='', $bo_table, $rows=10, $lenA=45, $lenB=40)
{
    global $latest_skin, $cfg;

    $tmp_latest_skin = $latest_skin;

    // 스킨디렉토리값이 넘어왔다면
    if ($skin_dir) {
        $latest_skin = "./$cfg[bbs_dir]/skin/latest/$skin_dir";
    }

    $sql = " select * from $cfg[table_board] where bo_table = '$bo_table' "; // 테이블의 모든값을 가져옴

    $bo = sql_fetch($sql);
    $bo_subject = $bo[bo_subject];

$today = getdate();      // 오늘날짜들을 가져와서.
$sql_mon = $today['mon'];
    $sql_day = $today['mday'];
    $sql_year = $today['year'];


    // 0~9 월까지를 01 ~ 09 로 만들어 준다.
if($sql_mon <= 9){
$temp_sql_day = "0".$sql_mon;
$sql_mon = $temp_sql_day;
}


// 0~9 일까지를 01 ~ 09 로 만들어 준다.
if($sql_day <= 9){
$temp_sql_day = "0".$sql_day;
$sql_day = $temp_sql_day;

}
                                                 
$sql_date ="$sql_year"."$sql_mon"."$sql_day";

  $sql = " select * from {$cfg[write_table_prefix]}{$bo_table} where wr_link2 >= '$sql_date' and wr_comment = 0 order by wr_link1 asc limit 0, $rows ";
   
$result = sql_query($sql);

for ($i=0; $row = mysql_fetch_array($result); $i++) {
        $list[$i] = $row;
        $list[$i][href] = "./?doc=$cfg[bbs_dir]/gnuboard.php&bo_table=$bo_table&wr_id=$row[wr_id]";

        // 코멘트 카운트
        $list[$i][commentcnt] = "";
        if ($row[wr_commentcnt] > 0) {
            $list[$i][commentcnt] = "($row[wr_commentcnt])";
        }
        $list[$i][name] = gblayer($row[mb_id], cut_str($row[wr_name],10), $row[wr_email], $row[wr_homepage]);
       

// 들어있는 값에서 시작일과 종료일이 다를때에 제목을 다르게 표시하기
$start_day = substr($link[$i][link1] , 7, 8);
    $start_day_y = substr($start_day,0,4);
    $start_day_m = substr($start_day,4,2);
    $start_day_d = substr($start_day,6,2);

    $end_day  = substr($link[$i][link2] , 7, 8);
    $end_day_y = substr($end_day,0,4);
    $end_day_m = substr($end_day,4,2);
    $end_day_d = substr($end_day,6,2);



if($start_day==$end_day){
   
$list[$i][subject] = conv_subject($row[wr_subject],$lenA,'™');

}else{

$list[$i][subject] = conv_subject($row[wr_subject],$lenB,'™');

}

        $list[$i][content] = get_text($row[wr_content]);
        $list[$i][date] = substr($row[wr_datetime],2,8);

// 경고창으로 디버깅하기
// echo "<script language='javascript'>alert('$row[wr_datetime]');</script>";

        $list[$i][icon_new] = "";
if ($row[wr_datetime] >= date("Y-m-d H:i:s", time() - $bo[bo_new] * 3600)) {
            $list[$i][icon_new] = "<img src='$latest_skin/icon_new.gif' align=absmiddle> ";
        }

        for ($k=1; $k<=$cfg[file_count]; $k++) {
            if (@preg_match($cfg[image_extension], $row["wr_file".$k])) {
                $list[$i]["file_image".$k] = "./data/file/$bo_table/" . $row["wr_file".$k];
            }
        }

        for ($k=1; $k<=$cfg[link_count]; $k++) {
            if ($row["wr_link".$k]) {
                $link[$i]["link".$k] = set_http(get_text(cut_str($row["wr_link".$k], 255)));
                $link[$i]["link_href".$k] = "./?doc=$cfg[bbs_dir]/gblink.php&$qstr&wr_id=$row[wr_id]&index=$k";
            }
        }


    }
    mysql_free_result($result);
   
    include "$latest_skin/latest.skin.php";

    $latest_skin = $tmp_latest_skin;
}
추천
0

댓글 전체

^^; 현정님 위에 다른 님께서 하신 실수를 또 하신것 같습니다.
부르는 함수가 틀립니다.
latest_schedule() 로 호출하시면 오늘날짜에 가까운 순서대로 나옵니다.
부탁하나 있습니다.. 사용해봤는데 정말 좋은거 같습니다..
그런데 글쓴 순서가 아닌 기간별로 나와야지 되지 않을까요?
입력을 전날꺼 부터 하기도하고 앞뒤로 넣다보니까?

넘좋은거 만들어 주셔서 감사합니다..
develop.lib.php 에 위의 코드를 넣으셨으면 latest_schedule() 로 호출하셔야 합니다 ^^
확인해 보세요.. latest()로 호출하셨을 겁니다.
호출하는 형식은 안에 주석 참고 하세요..
그리고 윗분이 일주일 단위로 출력되게 하는 방법은...
질문을 이해하지 못 했습니다. 쏘리합니다. 만약에 며칠 간격을 두려면 코드가 복잡해 질것으로 보입니다. 아니면 데이트 형 객체가 있으면 몰겠는데.. 솔직히 저도 php 는 그냥 고쳐 쓰는 정도만 하는 지라.. 객체들도 다 안 훑어 봤습니다. ^^;
초보자에게 me님과 같은 분들이 정말 도움이 많이됩니다.
감사드리구요
스케줄 최근게시물에서 날짜별로 안되고 입력된순 으로 나타나는데
이런 현상은 무엇 때문인가요?
전체 169
그누3 스킨 내용 검색 최신글에서

회원로그인

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