포럼
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
쿡래빗 레이아웃 테스트중...
2014.03.14 12:24
XE에 입문한지 얼마 되지않아서 이것저것 테스트 해보고 있는중에 쿡래빗 레이아웃을 설치해 봤습니다.
상당히 괜찮은 레이아웃 이네요 @.@
설치후 별다른 문제점은 발견하지 못했는데 내정보 확인시 최근작성글, 최근작성댓글, 최근쪽지 항목이 표시가 안되더군요. (지금은 표시됩니다)
그래서 레이아웃을 열어봤더니 해당 값을 얻기위해서 직접 쿼리를 날리는것을 발견했습니다. 그런데 쿼리문에서도 별다른 문제를 발견하지 못했습니다 @.@
<!--// DB가져오기 글,댓글,쪽지 --> {@ $oDB = &DB::getInstance(); $query1 = $oDB->_query('select * from xe_documents where member_srl = '.$logged_info->member_srl.' ORDER BY regdate DESC limit 0, 13'); $result1 = $oDB->_fetch($query1); } {@ $oDB = &DB::getInstance(); $query2 = $oDB->_query('select * from xe_comments where member_srl = '.$logged_info->member_srl.' ORDER BY regdate DESC limit 0, 13'); $result2 = $oDB->_fetch($query2); } {@ $oDB = &DB::getInstance(); $query3 = $oDB->_query('select * from xe_member_message where receiver_srl = '.$logged_info->member_srl.' AND message_type = "R" ORDER BY regdate DESC limit 0, 13'); $result3 = $oDB->_fetch($query3); }
한참을 고민하다 해당 쿼리문을 직접 쿼리실행창을 통해서 날려봤더니... 오류 발생!!??
오류 원인은 'limit'구문... ㅎㅎㅎ 그렇습니다. 제가 DB를 mssql을 사용하고 있었다는걸 잊고 있었습니다 ㅋ
그래서 해당 구문을 'top 10'으로 변경해서 상위 10개만 가져오도록 수정!!
또하나 문제 되는부분은 최근쪽지 가져올때 사용한 쿼리문중 message_type = "R" 부분... mssql에서는 큰따옴표가 아니라 작은따옴표를 이용해서 이 부분에서도 오류가 발생합니다.
그래서 message_type = \'R\' 로 변경 했습니다.
<!--// DB가져오기 글,댓글,쪽지 --> {@ $oDB = &DB::getInstance(); $query1 = $oDB->_query('select top 10 * from xe_documents where member_srl = '.$logged_info->member_srl.' ORDER BY regdate DESC'); $result1 = $oDB->_fetch($query1); } {@ $oDB = &DB::getInstance(); $query2 = $oDB->_query('select top 10 * from xe_comments where member_srl = '.$logged_info->member_srl.' ORDER BY regdate DESC'); $result2 = $oDB->_fetch($query2); } {@ $oDB = &DB::getInstance(); $query3 = $oDB->_query('select top 10 * from xe_member_message where receiver_srl = '.$logged_info->member_srl.' AND message_type = \'R\' ORDER BY regdate DESC'); $result3 = $oDB->_fetch($query3); }
모듈을 호출해서 검색한다던가, xml 쿼리문을 짠다던가, 다른 방법들도 있겠군요...
역시 DB 직접접속만큼 손쉬운 방법은 없지만요 ㅎ