2012-04-24 5 views
0

현재 간단한 페이지 매김에 PHP PEAR를 사용하고 있습니다. 누구든지 기존 결과보기에서 레코드 세트를 페이지하는 방법에 대한 권장 방법이나 예제가 있습니까? 결과 페이지에서만 가능 페이징결과보기 내의 페이지 매기기

Search -> Results -> View Record 

... 내가 대해 질문하고하는 것은 물론 "보기 녹음"내 페이지에있는 기능은 다음과 같습니다 전형적인 모델은 다음과 같이 될 것이다. 따라서 레코드를 보는 동안 결과 세트의 다음 (또는 이전) 레코드로 쉽게 페이지 할 수 있습니다. 분명히 레코드 세트 상태와 페이지 매김 변수를 결과 페이지에서보기 페이지로 전달할 수 있지만이 작업을 수행하는 좀 더 우아한 방법이 있는지 궁금합니다. 어떤 생각이나 추천? 감사!

답변

1

PEAR 페이지 매김 코드가 여기에 도움이 될 것이라고 생각하지 않습니다.

보기 레코드 페이지에 쿼리 문자열 매개 변수 RecordID가 있다고 가정하면보기 레코드 페이지에 PrevNext 링크를 만들 수 있습니다. 이전 및 다음 기록을 취득하기 위하여는, 당신은 다음과 같은 SQL 문을 사용할 수 있습니다

-SELECT RecordID FROM records WHERE RecordID < '" . $CurrRecordID . "' ORDER BY RecordID DESC LIMIT 1

다음-SELECT RecordID FROM records WHERE RecordID > '" . $CurrRecordID . "' ORDER BY RecordID ASC LIMIT 1

을 결과 페이지의 종류가 다르게 따라 변경합니다.

0

PEAR 페이지 매김을 사용하는 방법을 알아 냈습니다. 이를 테스트하기 위해 검색 결과 페이지를 복제하고 레코드 세트를 확장 한 다음 레코드보기 페이지에서 모든 세부 정보를 가져 왔습니다. 기본적으로 중복 결과 페이지에 검색 결과 필드 대신 레코드보기 세부 정보가 표시되었습니다. 다음으로 페이지 매김 결과를 페이지 당 1 레코드로 제한했습니다. 다시 원래의 검색 결과 페이지로 연결하려면 중복 페이지에 pageID 번호를 전달했습니다. 결과 세트가있는 페이지를 계산하여이를 상쇄해야했습니다. 그렇게하면 pageID는 결과의 수를 정확하게 반영합니다. 페이지 당 20 개의 레코드를 반환하고 결과 세트의 2 페이지에있는 경우 결과의 첫 번째 레코드에 21의 pageID가 필요하다는 것을 알았습니다.