안녕하세요~
게시판에 글을 작성하고 24시간이 지나야 새글을 작성할 수 있도록 했습니다.
처음 작성시작은 DB에 저장되어 있고
글 등록을 할 때 DB에 저장된 시간과 비교를 해서 24시간 미만이면
24시간에 이후에 글 등록이 가능하다고 메시지를 뿌려주고 있습니다.
문제는.. 이게 되는 pc가 있고 안되는 pc가 있습니다. (모두 다른 pc입니다)
1. 개발자 : 작동 이상 無
2. 대표 : 24시간 제한 없이 계속 등록이 됨
3. 사용자 : 24시간이 지났지만 글등록제한 메시지가 뜨고 저장이 안됨.
이렇게 있는데요.. 더 이상한 건.. 저희가 같은 서버에 접속을 해서 테스트를 해봤는데 (운영중인 홈페이지)
이런 결과가 나와서.. 문제를 해결못하고 있습니다.
서버에 시간도 현재시간과 잘 맞고요..
이런 경우가 있나요? 어디를 봐야 할까요?ㅠㅜ 계속 수정하라고는 하는데.. 원인을 못찾겠습니다,
감사합니다..
DB 에 저장되는 형식은 DATE 인가요?
Java에서 체크 하나요? DB에서 체크 하나요?
로그파일로 비교하는 부분의 두 날짜를 확인해 보시면 될 듯 한데요?
DB에 저장되어 있는 시간을 클라이언트 시간하고 비교 하고 있는것 아닌가요?
나:
DB 에 글등록 저장 데이터는 datetime형식입니다.
쿼리로 체크 하고 있습니다.
DATEDIFF(HOUR,REG_DATE,SYSDATETIME()) <![CDATA[<]]> 24; 이렇게요
SYSDATETIME 이 등록할 서버가 아니라 클라이언트 시간이랑 비교하는 것인가요..?
음.. 제 pc에서 시간을 며칠 후로 변경해도 잘 걸러집니다..
log4net 이나 이런 걸로 로그 한 번 찍어 보세요
SYSDATETIME() 이 데이터가 어떻게 넘어오는 지 확인해 보면 될 듯 한데요
나:
:해결했습니다
ajax을 사용했는데
이때에 캐시가 남아있어서
새로운 글을 등록할때에도 어떤 pc는 계속 등록이 되고
어떤 pc는 계속 등록이 되지 않았던 것 같습니다.
'나의질문답' 카테고리의 다른 글
지도에서 위경도 값 얻어오기 (0) | 2015.11.09 |
---|---|
ie9 ,ie10호환성체크 확인방법이 있나요? (0) | 2015.11.02 |
서브밋 시 데이터 전달 (0) | 2015.11.02 |
submit할 때 여러 폼의 데이터를 같은 곳으로 한번에 넘기려고 합니다. (0) | 2015.11.02 |
mssql 스케쥴러 등록 질문있습니다. (0) | 2015.11.02 |