질문/조언질답게시판
Extra Form
PHP PHP 7.0
CMS Rhymix 2.x

안녕하세요. 최근 1.9.9에서 2.0.9 -> 2.0.10으로 업데이트 하였습니다.

 

2.x로 업데이트 후 디버그에

01. Warning: Invalid argument supplied for foreach() Warning 이 보입니다

( 방금 1.9.10 새로 설치하고 테스트 해봤더니 1.9에서는 이 Warning 안 뜹니다)

 

이게 댓글을 등록한 직후에 뜨고 새로고침을 하면 사라집니다.

여러개의 게시판 스킨으로 바꿔보면서 확인했는데 모두

loop="$oDocument->getComments()=>$key,$comment" 

이 부분에서 걸리는데

if(!empty($oDocument->getComments())) 해봐도 똑같더라구요.

 

깃허브에 관련된 이슈도 없던데

저만 뜨는건지 혹은 없앨 수 있는 방법 아시면 조언 좀 부탁 드립니다.

 


□ default 게시판 스킨              
01. Warning: Invalid argument supplied for foreach()
modules/document/document.item.php:1011
modules/board/skins/default/_comment.html:7
classes/template/TemplateHandler.class.php:367
classes/template/TemplateHandler.class.php:156
modules/board/skins/default/_read.html:107
classes/template/TemplateHandler.class.php:367
classes/template/TemplateHandler.class.php:156
modules/board/skins/default/list.html:4
classes/template/TemplateHandler.class.php:367
classes/template/TemplateHandler.class.php:156
classes/display/HTMLDisplayHandler.php:97
classes/display/DisplayHandler.class.php:82
classes/module/ModuleHandler.class.php:1158
index.php:52


<ul cond="$oDocument->getCommentcount()" class="fbList">
        <li loop="$oDocument->getComments()=>$key,$comment" class="fbItem"|cond="!$comment->get('depth')" class="fbItem indent indent{($comment->get('depth'))}"|cond="$comment->get('depth')" id="comment_{$comment->comment_srl}">
        
□ sketchbook 게시판 스킨        
01. Warning: Invalid argument supplied for foreach()
modules/document/document.item.php:1011
modules/board/skins/sketchbook/_comment.html:8
classes/template/TemplateHandler.class.php:367
classes/template/TemplateHandler.class.php:156
modules/board/skins/sketchbook/_read.html:390
classes/template/TemplateHandler.class.php:367
classes/template/TemplateHandler.class.php:156
modules/board/skins/sketchbook/list.html:92
classes/template/TemplateHandler.class.php:367
classes/template/TemplateHandler.class.php:156
classes/display/HTMLDisplayHandler.php:97
classes/display/DisplayHandler.class.php:82
classes/module/ModuleHandler.class.php:1158
index.php:52

 

<ul class="fdb_lst_ul {$mi->fdb_hide}">
    <block loop="$oDocument->getComments()=>$key,$comment">

 

□ xedition 게시판 스킨    
01. Warning: Invalid argument supplied for foreach()
modules/document/document.item.php:1011
modules/board/skins/xedition/_comment.html:7
classes/template/TemplateHandler.class.php:367
classes/template/TemplateHandler.class.php:156
modules/board/skins/xedition/_read.html:134
classes/template/TemplateHandler.class.php:367
classes/template/TemplateHandler.class.php:156
modules/board/skins/xedition/list.html:4
classes/template/TemplateHandler.class.php:367
classes/template/TemplateHandler.class.php:156
classes/display/HTMLDisplayHandler.php:97
classes/display/DisplayHandler.class.php:82
classes/module/ModuleHandler.class.php:1158
index.php:52

 

<ul cond="$oDocument->getCommentcount()" class="fbList">
        <li loop="$oDocument->getComments()=>$key,$comment" class="fbItem"|cond="!$comment->get('depth')" class="fbItem indent indent{($comment->get('depth'))}"|cond="$comment->get('depth')" id="comment_{$comment->comment_srl}">

  • profile
    여기로군요.
    https://github.com/rhymix/rhymix/blob/a6ace52c9e25047f966eb83253526215936029b1/modules/document/document.item.php#L1011

    argument에 문제가 있는 것 같은데...
  • profile profile
    executeQueryArray를 해야 하는데 그냥 executeQuery를 해서
    결과가 배열로 나오지 않을 수도 있겠네요.
  • profile profile
    코어에서 수정해야 되는 사항이라면 기다리면 되겠네요. 감사합니다.
  • profile profile
    위의 이야기처럼
    https://github.com/rhymix/rhymix/blob/a6ace52c9e25047f966eb83253526215936029b1/modules/document/document.item.php#L1007
    에서 executeQuery를 executeQueryArray로 바꿔보세요.
    저는 일단 디버그 패널에서 빨간색은 안 보이게 된 것 같아요.
  • profile profile
    네. 감사합니다.