Extra Form
PHP PHP 7.4
CMS Rhymix 2.0

라이믹스 최신버전인 rhymix-2.0.21 으로 업하고 나니

제가 만들어 사용중인 게시판스킨에서 서버 오류가 출력됩니다,

001.jpg

2.0.20에서는 잘 작동되었는데 뭐가 문제일까요.

개인적인 정보가 있는 게시판이라 주소 공개는 어렵네요.

 

해당 코드입니다. 아래에서 빨간줄을 삭제하면 진입은 됩니다.

{@
    if(!$mi->end_name) $mi->end_name = end;
    if(!$mi->end_title) $mi->end_title = 종료;
    if(!$mi->ing_title) $mi->ing_title = 진행중;
    if(!$mi->approach_title) $mi->approach_title = 종료임박;
    if(!$mi->today_title) $mi->today_title = 오늘종료;
    if(!$mi->a_d) $mi->a_d = '+1 day';
    if(!$mi->i_d) $mi->i_d = '-1 days';

    

    $now = date("Y-m-d");
    $date = $document->getExtraEidValueHTML($mi->end_name);

    

    $this_day = date_create($document->getExtraEidValueHTML($mi->end_name));
    $date1 = date("Y-m-d",strtotime($this_day->format("Y-m-d").($mi->i_d)));
    $datetime = new DateTime("");
    $date2 = $datetime->modify($mi->a_d)
}

 

<!--// 종료 확장변수 설정 -->
<!--@if(!$date)-->
<span>
<!--@elseif($now > $date)-->
<span><span>{$mi->end_title}</span>
<!--@elseif($now == $date)-->
<span><span>{$mi->today_title}</span>
<!--@elseif($now < $date1)-->
<span><span>{$mi->ing_title}</span>

<!--@elseif($date2)-->
<span><span>{$mi->approach_title}</span>
<!--@end-->
 {$document->getTitle($mi->subject_cut_size)}</span>
<!--// 종료 확장변수 설정끝 --> 

  • profile
    $document->getExtraEidValueHTML($mi->end_name) 이 값이 재대로 안잡혀 잇는것 같아요.

    $mi->end_name
    $document->getExtraEidValueHTML($mi->end_name)

    이렇게 두개 디버깅을 해보시고 값이 어떻게 나오는지 확인 부터 먼저 해보세요.
  • profile profile

    이번 라이믹스 업데이트에 확장변수 시간대 관련 패치가 있었는데요, 기존에는 zdate를 사용해 변환을 진행하며 어느정도 유연성이 있었다면 이것을 Y-m-d 형태로만 변환하도록 수정하며 문제가 생긴 것으로 보입니다.

     

    즉 값은 있을텐데 해석을 잘못하며 발생하는 오류로 보입니다. 자세한건 확인이 필요하겠지만요.

  • profile profile
    아 그렇겠네요..
  • profile
    날짜 형식 확장변수가 비어 있는 경우 이전 버전까지는 빈값이 리턴되었으나, 2.0.21부터 -- 가 반환됨에 따라 발생하는 문제로 추정됩니다.
  • profile

    패치 완료했습니다. github에서도 업데이트되었고, 공식 홈페이지 rhymix.org 에서 배포하는 압축 파일에도 패치를 적용했습니다. classes/extravar/Extravar.class.php 파일만 교체하셔도 됩니다.

  • profile ?
    패치 감사합니다.
    잘 작동하네요.