[G4] 회원 가입시 생년월일 달력이 1970년 이전으로 가니 오류가 발생할때 > 기술자료

본문 바로가기

사이트 내 전체검색

[G4] 회원 가입시 생년월일 달력이 1970년 이전으로 가니 오류가 발생할때 > 기술자료

그누보드 [G4] 회원 가입시 생년월일 달력이 1970년 이전으로 가니 오류가 발생할때

페이지 정보


본문



윈도우 서버에서 APM으로 사용할때
회원 가입시 생년월일 달력이 1970년 이전으로 가니 오류가 발생합니다.

<오류 내용>
Warning: mktime(): Windows does not support negative values for this function in c:\apm_setup\htdocs\gnuboard\bbs\calendar.php on line 67

Warning: date(): Windows does not support dates prior to midnight (00:00:00), January 1, 1970 in c:\apm_setup\htdocs\gnuboard\bbs\calendar.php on line 68



그누보드 / bbs / calendar.php 에서 아래의 내용을 추가 및 수정합니다.

// 해당월의 1일
$mktime = mktime(0,0,0,$mm,1,$yyyy);
$dt = getdate(strtotime(date("Y-m-1", $mktime)));


위의 2줄을 아래와 같이 수정합니다.


// 1970년 회원가입 오류 해결을 위한 함수 선언  ( 작성자 : 해결사 님 )
function mk_time($m,$d,$y){

  if($y<1970){

    $mk_time=mktime(9,0,0,1,1,1970);

    $i=1969;

      if(checkdate($m,$d,$y)){
          do{
            for($j=12;$j>=1;$j--){
              if($m==$j && $y==$i){
                for($k=31;$k>=$d;$k--){
                  if(checkdate($j,$k,$i)) {
                    $time++;
                  } else { //
                  }
                } //for k
                break;
              } else {
                for($z=31;$z>=1;$z--){
                  if(checkdate($j,$z,$i)) {
                      $time++;
                  } else { //
                  } //if
                } //for z
              }
          }  //for j
          $i--;
        }while($i>=$y);
        return $mk_time-(($time)*24*3600);//24*3600=1day
      } else {
        return $mk_time;
      }
  } elseif($y>2038){

    $mk_time=mktime(9,0,0,1,1,2038);

    $i=2039;

      if(checkdate($m,$d,$y)){
          do{
            for($j=12;$j>=1;$j--){
              if($m==$j && $y==$i){
                for($k=31;$k>=$d;$k--){
                  if(checkdate($j,$k,$i)) {
                    $time++;
                  } else { //
                  }
                } //for k
                break;
              } else {
                for($z=31;$z>=1;$z--){
                  if(checkdate($j,$z,$i)) {
                      $time++;
                  } else { //
                  } //if
                } //for z
              }
          }  //for j
          $i++;
        }while($i>=$y);
        return $mk_time-(($time)*24*3600);//24*3600=1day
      } else {
        return $mk_time;
      }
  } else {//if 2038
    return mktime(0,0,0,$m,$d,$y);
  }
}

// 해당월의 1일
$mktime = mk_time($mm,1,$yyyy);
$dt = '1';



자료출처
http://www.sir.co.kr/bbs/board.php?bo_table=g4_qa&wr_id=9697

댓글목록

등록된 댓글이 없습니다.


Total 22건 1 페이지
  • RSS
기술자료 목록
22
Adobe   8391  2022-03-21 15:11 ~ 2025-10-13 02:00  
21
MySQL   9722  2018-10-03 02:29  
20
PHP   10382  2018-08-20 15:51  
19
Editor   14365  2017-05-25 18:08  
18
Oracle   40649  2016-02-03 21:19  
17
WindowsServer   15515  2016-01-09 23:05  
16
그누보드   19180  2015-11-16 14:19 ~ 2022-04-15 19:45  
15
Oracle   19933  2013-11-14 22:28  
14
MSSQL   18340  2013-08-28 10:20  
13
일반   31700  2013-05-08 00:45 ~ 2015-01-22 00:00  
12
영카트   22030  2013-01-07 18:34  
11
MSSQL   26865  2010-09-01 16:11 ~ 2020-03-11 09:55  
10
일반   16962  2009-10-31 15:46  
9
MySQL   15211  2009-07-23 09:57  
8
HTML   30782  2009-02-12 20:55  
7
Adobe   20590  2008-02-11 21:16  
열람
그누보드   15901  2007-11-21 16:17  
5
전자결제   24753  2007-11-08 17:43 ~ 2019-01-11 19:20  
4
HTML   14507  2007-01-14 22:03  
3
일반   12820  2007-01-13 00:05 ~ 2018-11-15 05:43  

검색

해피정닷컴 정보

회사소개 회사연혁 협력사 오시는길 서비스 이용약관 개인정보 처리방침

회사명: 해피정닷컴   대표: 정창용   전화: 070-7600-3500   팩스: 042-670-8272
주소: (34368) 대전시 대덕구 대화로 160 대전산업용재유통단지 1동 222호
개인정보보호책임자: 정창용   사업자번호: 119-05-36414
통신판매업신고: 제2024-대전대덕-0405호 [사업자등록확인]  
Copyright 2001~2026 해피정닷컴. All Rights Reserved.