xe로 운영중인 사이트를 라이믹스로 전환했습니다.

xe환경에서 정상작동되던 문제풀이 모듈( https://xetown.com/thirdparties/1204608 )을 라이믹스 환경에서 작동시키면 서버에러 메세지가 출력됩니다.

 

 PHP Errors and Warnings
=======================
01. Warning: Creating default object from empty value
    - modules/exammgmt/exammgmt.view.php line 129
    - classes/module/ModuleObject.class.php line 600
    - classes/module/ModuleHandler.class.php line 816
    - index.php line 52

 

 

1. modules/exammgmt/exammgmt.view.php line 129

1.JPEG

 

2. classes/module/ModuleObject.class.php line 600

1.JPEG

 

3. classes/module/ModuleHandler.class.php line 816

1.JPEG

 

4. index.php line 52

1.JPEG

 

해당 모듈이 xe환경에서 기준으로 제작이 된것 같은데요. 혹시 이런 에러에 대해서 시도 해볼만한 방법이 있을까요?

  • profile

    1. 에러가 아니라 워닝입니다. 현재 버전에서는 해당 모듈의 작동에 어떤 영향도 없지만, 나중에 PHP 8.x 버전으로 올라가면 문제가 될 수도 있다고 미리 경고해 주는 것입니다.

     

    2. XE는 워닝을 모조리 숨기지만 라이믹스는 숨기지 않습니다. 기존에도 계속 워닝이 뜨고 있었을 텐데 XE에서 덮어버리는 바람에 보지 못하신 것 뿐입니다. 모듈의 정상 작동 여부 및 코드 퀄리티와 관련하여 달라진 것은 하나도 없습니다.

  • profile ?
    답변감사합니다.
  • profile
    view 해당하는 윗줄에
    $args = new stdclass;
    넣어주면 안나올듯싶네요.
  • profile ?

                $logged_info = Context::get('logged_info');
                $args = new stdclass;
                $args->member_srl = $logged_info->member_srl;

     

    이렇게 말씀하시는거죠?

     

    해당 모듈이 라이믹스에서는 여러가지 작동되지 않는 문제들이 발생되어 일단은 xe로 되돌렸는데 추후 알려주신 부분도 라이믹스 전환 후 적용해보겠습니다.

    감사합니다.

  • ? profile
    저런 워닝은 라이믹스 전환과 관계없이 눈에 띌 때마다 수정해놓으시는 것이 좋습니다. 말씀드렸듯이 XE라고 워닝이 안 뜨는 것이 아니라, XE에서 강제로 숨겨버리는 것 뿐이니까요.

    단, new stdClass 선언을 잘못된 위치에 집어넣으면 오작동할 수도 있습니다. ㅠ
  • profile ?
    답변감사합니다. ^^