묻고답하기
고수님들 도와주세요.ㅠㅠㅠㅠ
2009.08.14 12:19
위젯을 만들려고하고있습니다...
문제는 xml파일을 출력하고싶은데요..
queries에 쿼리는 다음과 같습니다.
<query id="getOneFileInDocument" action="select">
<tables>
<table name="files" alias="files"/>
<table name="modules" alias="modules"/>
<table name="documents" alias="documents"/>
</tables>
<columns>
<column name="files.upload_target_srl" alias="document_srl"/>
<column name="documents.module_srl" alias="module_srl" /> <<<<<이부분 추가하였구요
</columns>
<conditions>
<condition operation="equal" column="modules.site_srl" var="site_srl" />
<condition operation="in" column="modules.module_srl" var="module_srls" filter="numbers" pipe="and" />
<condition operation="equal" column="files.module_srl" default="modules.module_srl" pipe="and" />
<condition operation="equal" column="files.direct_download" var="direct_download" pipe="and" />
<condition operation="equal" column="files.isvalid" var="isvalid" pipe="and" />
<condition operation="equal" column="documents.document_srl" default="files.upload_target_srl" pipe="and" />
</conditions>
<groups>
<group column="files.upload_target_srl" />
</groups>
<navigation>
<index var="list_order" default="documents.list_order" order="asc" />
<list_count var="list_count" default="20" />
</navigation>
</query>
저렇게 module_srl을 뽑아왔습니다... 따로 module_srl을 뽑아온 이유는 xml파일에 출력되는 document 마다의 module_srl을 같이 출력하고싶어서 입니다.
그리고나서 wiget의 php파일에서
$files_output = executeQueryArray("widgets.flash_gallery.getOneFileInDocument", $obj);
echo $files_output->data;
$files_count = count($files_output->data);
$document_srl_list = array();
$document_list = array();
$module_list = array(); <<<<<<
$module_srl_list = array(); <<<<< 여기 추가하였구요
if($files_count>0) {
for($i=0;$i<$files_count;$i++)
{
$document_srl_list[] = $files_output->data[$i]->document_srl;
$module_srl_list[] = $files_output->data[$i]->module_srl; <<<<<여기서 module_srl_list 변수에 module_srl 저장했습니다.
}
$tmp_document_list = $oDocumentModel->getDocuments($document_srl_list);
if(count($tmp_document_list)) {
foreach($tmp_document_list as $val) $document_list[] = $val;
}
}
$document_count = count($document_list);
$total_count = $widget_info->rows_list_count * $widget_info->cols_list_count;
for($i=$document_count;$i<$total_count;$i++) $document_list[] = new DocumentItem();
$widget_info->document_list = $document_list;
// $widget_info->module_srl = $module_srl_list; <<<<이부분처럼 widget_info->module_srl 변수에 module_srl을 저장하고싶은데 이부분에서 자꾸 오류가 납니다... 그래서 이걸 해결하고자 위의 foreach 부분다음에
forceah($tmp_module_list as $val1) $modlue_list[] = $val1; 추가하고
$widget_info->document_list = $document_list; 다음줄에
$widget_info->module_list = $module_list; 를 추가햇는데... 역시 오류가 나네요.ㅠㅠ
$widget_info->module_list에 각 document에 따른 module_srl정보를 저장하는 방법좀 알려주세요. .....
$widget_info->widget_path = $this->widget_path;
댓글 2
-
sol
2009.08.14 15:49
-
쥐엉
2009.08.14 16:55
echo부분 역시 오류나 가서 삭제했어요...
debugPrint()사용법은..링크대로는 무슨말인지 모르겠어요.;;ㅠㅠ
$widget_info->module_srl = $module_srl_list;
여기서 문법상 오류는 없는데
다른 부분에서 오류가 없는지 확인해 주시기 바랍니다.
echo $files_output->data; 코드는 동작이 되지 않으니 디버깅을 위해서는 debugPrint()를 사용하시기 바랍니다.
debugPrint() 사용법 http://bnufactory.com/16959