Open Q&A

zigger에 관련된 궁금한 무엇이든 물어보세요.

질문 전 가이드 문서를 먼저 확인해 보세요.?

관리자 메인 페이지 페이징 안되는 현상 (앞글에 이어서 작성합니다) 2024.02.15 15:35:01에 작성

  • 게시글 작성자 박제영
  • 게시글 조회수 481회
이전글 : https://www.zigger.net/forum/qna/102


뭐가 원인인지 잘 모르고, 이게 정답인지 아닌지도 모르겠지만.... 

functions.class.php 파일의
static public function thisuri($fancyQry = '') 함수 부분에

$qry = $_SERVER['QUERY_STRING']; 
이 변수를 화면에 찍어보면 아래와 같이 됩니다.

사용자 페이지
rewritepage=sub/board/cafeevent&page=2

관리자 페이지
rewritepage=redirect:/index.php/dash&rewritepage=manage/main.php/dash&page=2


$qry = substr($qry, strpos($_SERVER['QUERY_STRING'], '&') + 1); 

이부분에서 & 문자 다음부터 끝까지 가져오게 되어 있고 
가져온걸 찍어보면 아래처럼 됩니다. 

사용자 페이지
page=2

관리자 페이지 
rewritepage=manage/main.php/dash&page=2


현재 URI에서 qry 에서 가져온 부분을 삭제를 한 후 다시 URI를 만들어 return 을 하게 되는데 
관리자 페이지는 삭제할 값이 uri에 없기 때문에 페이징이 제대로 되지 않았던거 같습니다

$qry = substr($qry, strpos($_SERVER['QUERY_STRING'], '&') + 1);

현재 이 부분을 아래와 같이 수정을 하니 정상 작동을 하긴 합니다.

$qry = explode("&", $qry);
$qry = $qry[count($qry)-1];


정상 작동을 하긴 하는데 솔루션 전체적으로 어떠한 영향이 있는지는 모르겠습니다 ㅠ


파라미터가 추가되었을경우 제대로 작동하지 않네요 ㅠ

일단은 이렇게 수정해서 사용중입니다 ㅠㅠㅠㅠㅠㅠ
$qry1 = explode("rewritepage=manage", $qry);

        if (count($qry1) > 1) {
            $qry = $qry1[1];
            $qry = substr($qry, strpos($qry, '&') + 1);
        } else {
            $qry = substr($qry, strpos($_SERVER['QUERY_STRING'], '&') + 1);
        }