<SCRIPT> Date() 질문있습니다.

<SCRIPT> Date() 질문있습니다.

QA

<SCRIPT> Date() 질문있습니다.

답변 1

본문


<SCRIPT language=JavaScript>    
        var now = new Date(<?php echo $nowtime;?>);
         /////////----부득이 현재시간을 지정
        var dday = new Date(<?php echo $closetime;?>);
        /////////---- 마감시간       
        function getTime() {    
            var now = new Date(<?php echo $nowtime;?>).getTime(); 
            /////////---- 위와 같습니다.
            var distance = dday - now;
            var days = Math.floor(distance / (1000 * 60 * 60 * 24));
            var hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
            var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60));
            var seconds = Math.floor((distance % (1000 * 60)) / 1000);
            if (minutes<0) minutes = 0;
            if (seconds<0) seconds = 0;
            document.getElementById("counter1").innerHTML = hours;
            document.getElementById("counter2").innerHTML = minutes;
            document.getElementById("counter3").innerHTML = seconds;
            if( (minutes == '0') && (seconds == '0')){
                dday.setSeconds(dday.getSeconds()+0);
                console.log(dday);
            }           
            //console.log(now);
        }
        var myVar = setInterval(getTime, 1000);
</SCRIPT>

$nowtime; 의 형태는 다음과 같습니다.

(2020,06,20,19,30,00) 초단위까지 이런 형태로 들어갑니다.

 

'취미생활' 님의 도움으로 카운트되는 스크립트입니다.

 

var now = new Date(); 값으로 하면 pc 시간이 기준이 되어서 맞지가 않다보니

var now = new Date(<?php echo $nowtime;?>);  형태로 서버 현재시간을 강제로 넣었습니다.

 

어제 질문을 통해서 서버스크립트 활용 이야기를 들었는데..제가 그정도는 봐도 알수 없기때문에요..

저런 꼼수를 써보는데요.;;

 

물론 저것도 해결책이 아닙니다. 강제로 넣은 현재시간이 스크립트에서는 진행되는 시간이 

아니다 보니...제가 원하는 카운트값은 얻어지지만 타이머는 그냥 멈춰 있거든요.

 

[질문]

그래서 제가 알고자 하는 부분은 이렇습니다.

스크립트 마지막에

var myVar = setInterval(getTime, 1000); 할때마다...

$nowtime; 이 자동으로 1초씩 줄어들도록 하면 해결이 될것도 같은 생각이 들어서요.. 

 

이렇게 하려면 위 스크립트를 어떻게 수정하는게 맞는지 알고 싶습니다.

 

조언을 좀 부탁드립니다.

감사합니다.

이 질문에 댓글 쓰기 :

답변 1

카운트다운 소스는 웹상에 널리고 널렸는데.

어찌 어려운길을 가려 하시는지...

 


 $startdate = date("Y-m-d h:i:s", time());  // 오늘 날짜 시간 가져옴.
 $enddate = "2010-10-01 18:00:00"; // 여기가 이벤트 마감일..
 $timediffer=strtotime($enddate) - strtotime($startdate);   // 마감일과 오늘의 날짜 차이를 구함
 $day = floor(($timediffer)/(60*60*24));
 $hour = floor(($timediffer-($day*60*60*24))/(60*60));
 $minute = floor(($timediffer-($day*60*60*24)-($hour*60*60))/(60));
 $second = $timediffer-($day*60*60*24)-($hour*60*60)-($minute*60);
echo "startdate :".$startdate;
echo "<br>";
echo "enddate :".$enddate;
echo "<br>";
echo $day."일 ". $hour. "시간 ". $minute. "분 ". $second. "초 남았습니다.";

답변 감사합니다.

근데...저는 스크립트로 구현하고 있거든요.
화면상에서 카운트가 되고 있는거죠... 단지 스크립트로 구현하면 사용자컴 시간이 기준이 되버려서 저렇게 질답 남기게 되었습니다.

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 9
© SIRSOFT
현재 페이지 제일 처음으로