2012-04-24 8 views
0

私は現在、単純なページ設定にPHP PEARを使用しています。既存の結果ビュー内でレコードセットをページングする方法の推奨方法や例は誰にもありますか?典型的なモデルは、このようなものになるだろう:結果ページでのみ可能ページングで結果ビュー内のページ番号

Search -> Results -> View Record 

...何を私が求めていますすることだけでなく、「ビュー・レコード」内のページへの能力です。したがって、レコードを表示しているときに、結果セット内の次の(または前の)レコードに簡単にページングする機能があります。明らかに、レコードセットの状態とページング変数を結果ページからビューページに渡すことができましたが、これを行うもっとエレガントな方法があるのだろうかと思っていました。任意のアイデアや推奨事項?ありがとう!

答えて

1

私はPEARページ作成コードがあなたを助けてくれるとは思わない。

ビューレコードページにクエリ文字列パラメータRecordIDがあると仮定すると、ビューレコードページにPrevNextリンクを作成できます。前回と次のレコードを取得するためには、あなたはこのようにSQL文を使用することができます。

PREVから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ページネーションを使ってそれを行う方法を考え出しました。これをテストするために、検索結果ページを複製し、レコードセットを展開し、View Recordページからすべての詳細情報を取得しました。基本的に私は、検索結果フィールドの代わりにビューレコードの詳細を表示する私の重複結果ページを持っていた。次に、ページごとの結果をページあたり1レコードに制限しました。元の検索結果ページに戻すには、重複したページにpageID番号を渡しました。私は結果セットがどのページにあるのかを計算することによってそれを相殺しなければなりませんでした。このようにして、pageIDは結果の数を正確に反映します。私がページあたり20レコードを返していて、結果セットの2ページ目にあった場合...結果の最初のレコードに21のpageIDが必要であることがわかった。

関連する問題