sql 잘하시는분들 도와주세요 ~ > 그누4 질문답변

그누4 질문답변

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

sql 잘하시는분들 도와주세요 ~ 정보

sql 잘하시는분들 도와주세요 ~

본문



일단 소스 한번 구경해주시고요 ㅎ

<?
/************************************************************************
하루에 1번만 실행합니다.
특정 테이블의 날짜가 현재 날짜와 비교해 이전이면 해당 게시물을 지정한 테이블로 복사 또는 이동시킵니다.
*************************************************************************/
$timer[now] = date("Y-m-d"); // 현재 날짜
$timer[last] = $config[cf_10]; // 최근실행 날짜정보를 가지는 여분필드

/* 여기서부터 사용자 환경에 따라 변경하시기 바랍니다. */
$timer[tbl_from] = ""; // 원본 테이블
$timer[tbl_field] = "wr_4"; // 날짜정보를 가지고 있는 테이블 컬럼명
$timer[tbl_to] = array(""); // 이동할 테이블명 배열
$timer[sw] = "move"; // copy: 게시물 복사, move: 게시물 이동
/* 여기까지 사용자 환경에 따라 변경 가능한 코드입니다. */

// 최근실행 날짜와 현재 날짜가 다르면 실행
if ($timer[last] != $timer[now]) {
$sql = " update $g4[config_table] set cf_10='$timer[now]' ";
sql_query($sql);

$fromTable = $g4[write_prefix] . $timer[tbl_from];
$sql = " select wr_id from $fromTable where cast($timer[tbl_field] as date) < now() ";
$result = sql_query($sql);
for ($i=0; $row = sql_fetch_array($result); $i++) {
$wr_id_list[$i] = $row[wr_id];
}

if (count($wr_id_list)) {
$timer[wr_id_list] = implode(",", $wr_id_list);
move_update($timer);
}
}

function move_update($timer)
{
global $g4, $config, $member, $is_admin;

$sw = $timer[sw];
$bo_table = $timer[tbl_from];
$write_table = $g4['write_prefix'] . $bo_table;
$wr_id_list = $timer[wr_id_list];
$_POST['chk_bo_table'] = $timer[tbl_to];

ob_start();
include_once("$g4[bbs_path]/move_update.php");
ob_end_clean();
}
?>


위에 보시다시피 마지막 실행날짜와 현재 날짜가 다르면 게시물날자랑 현재 날자랑 비교해서 이동하게끔 시키는 건데요 ㅇㅅㅇ...
이게 첫날업로드시킬때[마지막실행기록x] 잘작동하고 다음날에는 마지막실행기록만 하고 이동을 안시키고 모레는 그 전날꺼만 이동시키고 모레날짜랑 똑같은건 이동을 안시킵니다 ;ㅁ; !!! 헐


그래서 제가 생각하기로는
마지막 실행날짜와 현재날짜 비교하는거랑
게시물날짜(wr_4)랑 현재날짜 비교하는거 중에서
게시물날짜랑 비교하는 현재날짜가 안맞는거같습니다 ;ㅁ; [분명 생각일뿐이여요;;.]

열심히 뚫어져라 봤지만... 모르겟네요 ;; 도와주세요 ~

댓글 전체

$sql = " select wr_id from $fromTable where cast($timer[tbl_field] as date) < now() "; 을

$sql = " select wr_id from $fromTable where cast($timer[tbl_field] as date) <= now() "; 이렇게 해보세요
전체 66,554 |RSS
그누4 질문답변 내용 검색

회원로그인

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