/bbs/db_table.optimize.php
이 파일은 로그인을 하게되면 거치는 파일이라고 알고 있습니다
해서 그 파일속에 다음 코드를 넣었습니다.
Copy
$query = "select * from g5_write_note";$result = sql_query($query);$note = sql_fetch_array($result);if ($note['wr_8'] < G5_TIME_YMD) { sql_query("update g5_write_note set wr_3 = '5' where wr_3 = '1'or'2'or'3'or'4' ");}
제가 생각한 것은 로그인을 하게 되면
오늘날짜가 $note['wr_8'] 값보다 크면 wr_3 = '1'or'2'or'3'or'4' 인값이
wr_3 = '5' 이렇게 바뀌어라 였는데 ㅠㅠ 오늘 로그인 했더니 바뀌지가 않네요..
if ($note['wr_8'] < G5_TIME_YMD) { 이 조건문을
if ($note['wr_8'] > G5_TIME_YMD) { 이렇게 하면 바로 바뀌거든요
제가 뭐 빼먹은 부분이 있나요? ㅠ.ㅠ
제발 알려주세요
답변 3개 / 댓글 2개

이 부분에서 완료일이 지나면 기한지남으로 자동으로 바뀌게 하고싶은부분입니다. ㅠㅠ.ㅠ
logos
2017-09-07 (목) 09:14:51
$query = "select * from g5_write_note";
이 결과가 딱 1개의 행인지 부터 점검해 봐야 할 듯 싶구요
딱 하나의 행이라면
뭔가.. 로직이 잘못된 것 같은 느낌입니다
select 쿼리와 if 문 같은 비교없이
무조건 업데이트 문장만 수행해도 될 것같은 느낌이랄까요?
답변에 대한 댓글 1개
humanb2box
2017-09-07 (목) 09:38:18
여러개의 게시글이 있는데요 그중에 wr_3필드의 값을 변경하고 싶은거거든요..
2017-09-07 (목) 09:10:17
Copy
<?php$query = "select * from g5_write_note";$result = sql_query($query);$note = sql_fetch_array($result);if ($note['wr_8'] < G5_TIME_YMD) { //$note['wr_8'] 가 현재 시간보다 작다면 아래 쿼리 실행 sql_query("update g5_write_note set wr_3 = '5' where wr_3 = IN(1,4)");}?>
아니면 로그인 했을때 쿼리 돌려주면 될 것 같은데요
Copy
sql_query("update g5_write_note set wr_3 = '5' where wr_3 = IN(1,4) AND wr_8 <'".G5_TIME_YMD."'");
답변에 대한 댓글 1개
humanb2box
2017-09-07 (목) 10:02:05
if ($note['wr_8'] < G5_TIME_YMD) {
이부분을 반대로 하면 지금 먹어야 하는데 ㅠㅠ 왜 안먹죠? ㅠㅠㅠㅠ
이부분을 반대로 하면 지금 먹어야 하는데 ㅠㅠ 왜 안먹죠? ㅠㅠㅠㅠ
답변을 작성하려면 로그인이 필요합니다.