묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
쿼리 페이지 알아내는방법없나요?
2011.03.25 11:51
<query id="getNewsList" action="select">
<tables>
<table name="member_news" />
</tables>
<columns>
<column name="*" />
</columns>
<conditions>
<condition operation="equal" column="member_srl" var="member_srl" notnull="notnull" />
</conditions>
<navigation>
<list_count var="list_count" default="8" />
<page_count var="page_count" default="10" />
<page var="page" default="1" />
</navigation>
</query>
이게 지금 제가 만든 쿼리인데요.
자료가 10개가 있으면 8개 검색하잖아요. 2번째 페이지 검색하면 2개가 나오는데. 3번째 페이지검색하면 2개가 또나와요; 없는 페이지면 마지막 페이지가 반복되는것같아서요;
그래서 다음버튼을 계속 누르게되면 페이지는 2,3,4,5,6,7...15이렇게 늘어나는데, 내용은 똑같잖아요;
크게 상관없다고 생각했는데 그러다가 이전 버튼을 누르면 14,13,12,11,....4,3,2, 까지 모두 똑같은 내용으로 계속 다시 돌려야하잖아요;
그래서 쿼리에서 페이지 수를 알아와서 이전 페이지하면 다시 돌아갈수있게 할려고하는데 어떻게해야할가요?
<tables>
<table name="member_news" />
</tables>
<columns>
<column name="*" />
</columns>
<conditions>
<condition operation="equal" column="member_srl" var="member_srl" notnull="notnull" />
</conditions>
<navigation>
<list_count var="list_count" default="8" />
<page_count var="page_count" default="10" />
<page var="page" default="1" />
</navigation>
</query>
이게 지금 제가 만든 쿼리인데요.
자료가 10개가 있으면 8개 검색하잖아요. 2번째 페이지 검색하면 2개가 나오는데. 3번째 페이지검색하면 2개가 또나와요; 없는 페이지면 마지막 페이지가 반복되는것같아서요;
그래서 다음버튼을 계속 누르게되면 페이지는 2,3,4,5,6,7...15이렇게 늘어나는데, 내용은 똑같잖아요;
크게 상관없다고 생각했는데 그러다가 이전 버튼을 누르면 14,13,12,11,....4,3,2, 까지 모두 똑같은 내용으로 계속 다시 돌려야하잖아요;
그래서 쿼리에서 페이지 수를 알아와서 이전 페이지하면 다시 돌아갈수있게 할려고하는데 어떻게해야할가요?
<tables>
<table name="member_news" />
</tables>
<columns>
<column name="format(count(*)/8,0)" alias="last_page_count" />
</columns>
<conditions>
<condition operation="equal" column="member_srl" var="member_srl" notnull="notnull" />
</conditions>
<navigation />
</query>
받아온 결과를 대입하시면 되겠네요.
그런데 $page_navigation->last_page 이걸 이용해서 스킨선에서 필터링하면 안되나요? 페이지 수를 직접 타이핑해서 칠경우나 필요한 기능 같습니다. 굳이 미리 구해야할 필요는 없어보이는데요. 오히려 한번 더 쿼리를 날리기 때문에 좋지 않는 방법 같습니다.