테스트 사이트 - 개발 중인 베타 버전입니다

날짜 비교하는것좀 알려주세요ㅜㅜ 채택완료

냐이 6년 전 조회 3,207

$member['mb_4'] 에 날짜들어가는 형식은 2019-07-03

이런식으로 값이 들어가는데요

</p>

<p>$last_date = $member['mb_4']; 

$to_date = date("Y-m-d", time());  </p>

<p>$total_day = (strtotime($last_date) - strtotime($to_date) ) / 86400; </p>

<p>

현재시간 구하는거를 가져와서

mb_4에 날짜와 현재시간보다 날짜가 이전이면 -14 이런식으로 -(마이너스) 값이 들어가는데

</p>

<p>else if($member['mb_level'] == '5'){</p>

<p>    if($total_day > 0 && $member['mb_4']){</p>

<p>      레벨다운 업데이트쿼리</p>

<p>    }</p>

<p>}</p>

<p>

이렇게 조건을 주니까그냥 조건과 상관없이 레벨 5인 회원이 레벨이 하향이되는데 

뭐가문제일까요ㅜㅜ?

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트
L
6년 전

echo $total_day  로 일단 $total_day  값을 확인해보세요. 그리고 원하시는 것이 그냥 현재 날짜보다 mb_4 가 이전이면 레벌을 다운시키는 것이면  위에 부분은 필요없이 

</p>

<pre>
else if($member['mb_level'] == '5'){</pre>

<p>  if($member['mb_4']&&strtotime($member['mb_4']) < time()){

         레벨다운 업데이트쿼리

    }

 </p>

<p>

이렇게 하면 되지않을까요?

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

보여주신 부분은 문제없어보입니다.

올려주신 소스 그대로 표현해봤습니다.

 

$last_date = " 2019-07-03"; 

$to_date = date("Y-m-d", time());    $total_day = (strtotime($last_date) - strtotime($to_date) ) / 86400;

if($total_day > 0 && $last_date){  echo "쿼리실행"; }

 

 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인