5

こんにちは、これは私のページネーション コードです

$config['base_url']    = base_url().'cp/orders/';
$config['suffix'] = '?'.http_build_query($_GET, '', "&");
$config['uri_segment'] = 3;
$config['total_rows']  = $count_all;
$config['per_page']    = 20 ;
$this->pagination->initialize($config);
echo $this->pagination->create_links();

したがって、最初のページでは、page2 をクリックすると正常に動作します。

http://mysite.com/cp/orders/20?sort=id&adc=desc

しかし、2番目のページで1ページ目または前のページ( < )をクリックすると、

http://mysite.com/cp/orders/20

これ

$config['suffix'] = '?'.http_build_query($_GET, '', "&");

以前のリンクでは機能しません!

4

2 に答える 2

4

first_urlライブラリを変更したくない場合は、次のように設定できます。

$config['first_url'] = $config['base_url'] . $config['suffix'];
于 2015-02-26T06:06:37.890 に答える
4

最初のページのリンクが残りのページのリンクと一致しないことに関連するバグを見つけて修正しました。CodeIgniter 3.0 がリリースされるまで、Github リポジトリの現在のバージョンで Pagination ライブラリを拡張することをお勧めします。その時点で組み込みになり、拡張ライブラリを削除できます。

新しいバージョンには、 と呼ばれる構成オプションもありreuse_query_string、これを に設定するTRUEと、既存のクエリ文字列が保持されます。したがって、ページに到達したときにそれらがすでに存在する場合は、それらを接尾辞として指定することについて心配する必要はありません。

$config['reuse_query_string'] = TRUE;

現在のライブラリ ファイル: https://github.com/EllisLab/CodeIgniter/blob/develop/system/libraries/Pagination.php 情報付きの関連プル リクエスト: https://github.com/EllisLab/CodeIgniter/pull/2199

于 2013-03-08T05:58:01.120 に答える