묻고답하기
[초보] DB 관련
2015.12.10 13:19
DB 읽어와서 출력하는 위젯 만들고 있는데 출력이 되지 않아 문의드립니다.
- 쿼리 xml
(같은 시스템에 있는 그누보드 g5_member에서 값 가져오는 것)
<query id="getUni" action="select">
<tables>
<table name="g5_member" />
</tables>
<columns>
<column name="*" />
</columns>
<conditions>
<condition operation="equal" column="mb_level" var="mb_level" filter="number" />
</conditions>
<navigation>
<index var="sort_index" default="mb_1" order="order_type" />
</navigation>
</query>
- 위젯 php
<?php
class meis_form extends WidgetHandler {
function proc($args) {
$obj = null;
$obj->mb_level = 2;
$obj->sort_index = "mb_1";
$obj->order_type = "asc";
$output = executeQueryArray("widgets.meis_form.getUni", $obj);
if(!$output->data) $output->data = array();
Context::set('result_uni', $output->data);
// 템플릿의 스킨 경로를 지정 (skin, colorset에 따른 값을 설정)
$tpl_path = sprintf('%sskins/%s', $this->widget_path, $args->skin);
Context::set('colorset', $args->colorset);
// 템플릿 파일을 지정
$tpl_file = 'layout';
// 템플릿 컴파일
$oTemplate = &TemplateHandler::getInstance();
return $oTemplate->compile($tpl_path, $tpl_file);
}
}
?>
- 스킨 레이아웃 html
<div class="gl">
<div class="unilist">
<!--@foreach($result_uni as $val)-->
{$val->m_1}
<!--@end-->
</div>
</div>
댓글 5
-
l****fd486
2015.12.10 13:21
-
GG
2015.12.10 13:37
일단.....
xml을 통하여 xe에서 디비 쿼리를 하고자 하실때는 자동으로 테이블명에 prefix 가 붙습니다.
<table name="g5_member" />
이부분을 보시면 실제 테이블명은 xe_g5_member 로 인식하게 됩니다.
기타 다른 문제들도 많아 보이지만 가장 기본적인것 한가지를 말씀드립니다....
-
l****fd486
2015.12.10 13:47
접두어 안붙게하려면 어떻게 하나요?
-
GG
2015.12.10 13:54
xml 쿼리문 말고 직접 쿼리문으로 쿼리 해야 합니다.
XE 템플릿에 쿼리 양식이 있습니다.
https://www.xpressengine.com/qna/23107534
-
l****fd486
2015.12.10 13:54
아하. 감사합니다!
출력값 => 없음.