ajax 질문드려요~! 자동 db 업데이트를 하고싶습니다.
본문
안녕하세요
ajax를 이용하여 ?
현재시간[a]과, db 필드에 저장된 시간[b]을 비교하여
a와b가 같다면 , 특정필드값을 1 혹은 0 으로 자동 변경해주고싶습니다.
자동으로 이러한 시스템이 가능한가요 ?
ajax로 하는게 아닌가요 ?
답변 2
1. 자바스크립트로 시간의 변화를 캐치하고
2. 캐치한값의 변화에 따라 변수를 전달 및 if문으로 ajax를 실행하고
3. ajax로는 페이지 처리 및 반환만 하시는거에요.
아니면 모든 시간을 ajax에 반환해서 ajax에서 db비교후 맞으면 처리하고 안맞으면 돌려주는거로 할수도 있겠지만 db에 엄청난 무리가 가겠죠...
ajax는 그냥 단순히 값을 전달받아서 처리하는거에요 ^^
php와 db로 시간처리 하는 것처럼 보이지만 다 자바스크립트로 처리하는거랍니다 ^^
ps. php는 페이지 리플레시 전에는 변화를 줄 수가 없기 때문에 안되요~
끝...
<script type="text/javascript">
var startTime = '20140728180000'; // 시작시간
var now = new Date(); // 현재시간
var year = now.getFullYear();
var month = now.getMonth()+1;
var date = now.getDate();
var hour = now.getHours();
var minutes = now.getMinutes();
var seconds = now.getSeconds();
//숫자형을 문자형으로바꿔서 자리수체크및 변환
if((month+"").length < 2){
month = "0"+month;
}
if((date+"").length < 2){
date = "0"+date;
}
if((hour+"").length < 2){
hour = "0"+hour;
}
if((minutes+"").length < 2){
minutes = "0"+minutes;
}
if((seconds+"").length < 2){
seconds = "0"+seconds;
}
//최종 현재시간
var loginTime = year+""+month+""+date+""+hour+""+minutes+""+seconds;
if(startTime > loginTime){//시작시간이 현재시간보다 클때
// 시작시간과 현재시간을 빼요.
var outYear = (startTime.substring(0,4) - year); // 계산안되요...
var outMonth = (startTime.substring(4,6) - month); // 죄송합니다...
var outDate = (startTime.substring(6,8) - date); // 머리가아파와요...
var outHour = (startTime.substring(8,10) - hour) * 3600000;
var outMinutes = (startTime.substring(10,12) - minutes + 60) * 60000; // 1분 = 60초 = 6만
var outSeconds = (startTime.substring(12,14) - seconds + 60) * 1000; // 1초당 1천
// 위에서 계산한 연,월,일,시,분,초의 텀을 다 합쳐요.
var outTime = outYear + outMonth + outDate + outHour + outMinutes + outSeconds;
// 다 합쳐진 시간후에 펑션을 실행시켜요.
setTimeout("실행할펑션();", outTime);
}else{
실행할펑션();
}
</script>
숫자는 싫어요...........
!-->
답변을 작성하시기 전에 로그인 해주세요.