아무래도 뭔가 ,,,찜찜하네요 ㅋ

아무래도 뭔가 ,,,찜찜하네요 ㅋ

QA

아무래도 뭔가 ,,,찜찜하네요 ㅋ

본문

m3크론으로 하루에 2번 자동업데이트 시키려는데요 업데이트 횟수는 크론에서 설정하면 되는거 같구요,,,

 

g5_write_progress 테이블의 wr_datetime을 기준으로 글 등록일이

오늘이면             wr_210을 접수로

1일 지나면          wr_210을 1단계 

2일 지나면          wr_210을 2단계 

3일 지나면          wr_210을 3단계 

4일 지나면          wr_210을 완료로 변경시키려는데

 

그누 절정 고수님들 도움을 토대로 정리해봤는데요 내가 한게 뭔가 아닌거 같아요,,,

크론돌리려는거라 바로 바로 되는지 안되는지 확인해보면서 할 수도 없그,,,휴

 

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

<?

if(G5_TIME_YMD != $board['bo_1']){

$today = G5_TIME_YMD;
$day1 = date("Y-m-d H:i:s", strtotime("-1 day")); // 1일전 
$day2 = date("Y-m-d H:i:s", strtotime("-2 day")); // 2일전 
$day3 = date("Y-m-d H:i:s", strtotime("-3 day")); // 3일전 
$day4 = date("Y-m-d H:i:s", strtotime("-4 day")); // 4일잔 


 $sql = "select wr_id, wr_210, wr_datetime, date(wr_datetime) today from g5_write_progress where wr_is_comment = 0 order by wr_id desc limit 0, 100
    ";
    $result = sql_query($sql);
    for ($i=0; $row = sql_fetch_array($result); $i++) {
       if($row['today'] == G5_TIME_YMD ){
            sql_query(" update from g5_write_2progress set wr_210='접수' where wr_id = {$row['wr_id']}  and mb_id = 'theplus'");
        }else if($row['day1'] == wr_datetime ){
            sql_query(" update from g5_write_2progress set wr_210='1단계' where wr_id = {$row['wr_id']}  and mb_id = 'theplus'");
        }else if($row['day2'] == wr_datetime ){
            sql_query(" update from g5_write_2progress set wr_210='2단계' where wr_id = {$row['wr_id']}  and mb_id = 'theplus'");
        }else if($row['day3'] == wr_datetime ){
            sql_query(" update from g5_write_2progress set wr_210='3단계' where wr_id = {$row['wr_id']}  and mb_id = 'theplus'");
        }else if($row['day4'] == wr_datetime ){
            sql_query(" update from g5_write_2progress set wr_210='완료' where wr_id = {$row['wr_id']}  and mb_id = 'theplus'");

        }
    }

    sql_query(" update g5_board set bo_1_subj='단계변경', bo_1='".G5_TIME_YMD."' where bo_table ='$bo_table' ");
}
?>

이 질문에 댓글 쓰기 :

답변 2

구현하시려는게..

g5_write_progress 테이블의 wr_datetime을 기준으로 글 등록일이

오늘이면             wr_210을 접수로

1일 지나면          wr_210을 1단계 

2일 지나면          wr_210을 2단계 

3일 지나면          wr_210을 3단계 

4일 지나면          wr_210을 완료로 변경시키려...

 

라고 하신것을 토대로

 

$sql = " select 

            wr_id, wr_210, wr_datetime,

               DATEDIFF(CURDATE(), date(wr_datetime)) as days_gap 

            from g5_write_progress where wr_is_comment = 0 order by wr_id desc limit 0, 100 ";

 

으로 변경하시고

 

 if($row['today'] == G5_TIME_YMD ){ 
            sql_query(" update from g5_write_2progress set wr_210='접수' where wr_id = {$row['wr_id']}  and mb_id = 'theplus'"); 
    }else if($day1==$row['wr_datetime']) { 
            sql_query(" update from g5_write_2progress set wr_210='1단계' where wr_id = {$row['wr_id']}  and mb_id = 'theplus'"); 
        }else if($day2==$row['wr_datetime']) { 
            sql_query(" update from g5_write_2progress set wr_210=2단계'' where wr_id = {$row['wr_id']}  and mb_id = 'theplus'"); 
        }else if($day3==$row['wr_datetime']) { 
            sql_query(" update from g5_write_2progress set wr_210='3단계' where wr_id = {$row['wr_id']}  and mb_id = 'theplus'"); 
        }else if($day4==$row['wr_datetime']) { 
            sql_query(" update from g5_write_2progress set wr_210='완료' where wr_id = {$row['wr_id']}  and mb_id = 'theplus'"); 

        } 

영역을 다 버리시고

 

if ($row['days_gap'] == 0) 

   $wr210 = '접수';

else if ($row['days_gap'] > 3) 

    $wr210 = '완료';

else

     $wr210 = $row['days_gap']."단계";

 

sql_query(" update from g5_write_2progress set wr_210='{$wr210}' where wr_id = {$row['wr_id']}  and mb_id = 'theplus'"); 

로 변경해보세요

 

감사합니다~
이렇게 했는데 웬지 안되네요,,바로 될거 같았는데.

$g5_path = '..';      //
include_once ($g5_path.'/common.php')

$sql = " select
            wr_id, wr_210, wr_datetime,
            DATEDIFF(CURDATE(), date(wr_datetime)) as days_gap
            from g5_write_2progress where wr_is_comment = 0 order by wr_id desc limit 0, 100 ";



if ($row['days_gap'] == 0)

  $wr210 = '접수';

else if ($row['days_gap'] == 1)

    $wr210 = '처리';

else if ($row['days_gap'] == 2)

    $wr210 = '이동';

else if ($row['days_gap'] == 3)

    $wr210 = '보관';

else

    $wr210 = '완료';

sql_query(" update from g5_write_2progress set wr_210='{$wr210}' where wr_id = {$row['wr_id']}  and mb_id = 'theplus'");

제가 작성해드린건 풀소스가 아니라 필요한 부분만 명시한거였습니다.

// $sql문 이상의 내용

$result = sql_querY($sql);


while($row = sql_fetch_array($result)) {


  // IF문

  // 업데이트문
}

이런게 있어야  제대로 되겠죠

반대로 한거 같은데요..

 

<?php  // 예제

$day2 = date("Y-m-d", strtotime("-2 day")); // 2일전 

if($day2=="2019-04-14") // 미리 정의한 값과 이틀전 날짜가 같다면....

echo 'y''; // y 출력

else

echo 'n'; // 다르면 n 출력

?>

 

아래처럼 변수에 맞게 변경해 보세요.

}else if($day1==$row['wr_datetime']) {

$g5_path = '..';     
include_once ($g5_path.'/common.php');


if(G5_TIME_YMD != $board['bo_1']){

$today = G5_TIME_YMD;
$day1 = date("Y-m-d H:i:s", strtotime("-1 day")); // 1일전
$day2 = date("Y-m-d H:i:s", strtotime("-2 day")); // 2일전
$day3 = date("Y-m-d H:i:s", strtotime("-3 day")); // 3일전
$day4 = date("Y-m-d H:i:s", strtotime("-4 day")); // 4일잔


 $sql = "select wr_id, wr_210, wr_datetime, date(wr_datetime) today from g5_write_progress where wr_is_comment = 0 order by wr_id desc limit 0, 100
    ";
    $result = sql_query($sql);
    for ($i=0; $row = sql_fetch_array($result); $i++) {
      if($row['today'] == G5_TIME_YMD ){
            sql_query(" update from g5_write_2progress set wr_210='접수' where wr_id = {$row['wr_id']}  and mb_id = 'theplus'");
    }else if($day1==$row['wr_datetime']) {
            sql_query(" update from g5_write_2progress set wr_210='1단계' where wr_id = {$row['wr_id']}  and mb_id = 'theplus'");
        }else if($day2==$row['wr_datetime']) {
            sql_query(" update from g5_write_2progress set wr_210=2단계'' where wr_id = {$row['wr_id']}  and mb_id = 'theplus'");
        }else if($day3==$row['wr_datetime']) {
            sql_query(" update from g5_write_2progress set wr_210='3단계' where wr_id = {$row['wr_id']}  and mb_id = 'theplus'");
        }else if($day4==$row['wr_datetime']) {
            sql_query(" update from g5_write_2progress set wr_210='완료' where wr_id = {$row['wr_id']}  and mb_id = 'theplus'");

        }
    }

    sql_query(" update g5_board set bo_1_subj='단계변경', bo_1='".G5_TIME_YMD."' where bo_table ='$g5_write_progress' ");
}

답변을 작성하시기 전에 로그인 해주세요.
전체 200
QA 내용 검색

회원로그인

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