頂部導航開始 -->

thinkphp分頁bug--解決thinkphp分頁亂碼問題

thinkphp自帶的分頁類存在bug,例如當我們搜索關鍵詞時,關鍵詞為中文,第二次點擊分頁的時候,就會亂碼,不能正常的顯示我們需要的頁碼。本文就這一問題給出解決方案。

出現亂碼的問題是因為thinkphp分頁類中的,構造url時存在的問題,thinkphp的分頁url是使用"/"來分隔參數的,在將數據傳遞到url中時,經過url加密,第二次傳遞的時候就會亂碼了,而如果我們使用"?"和"&"來分隔參數的話,就不會出現這個問題了。

所以要修改的內容是thinkphp的分頁類文件:/ThinkPHP/Extend/Library/ORG/Util/Page.class.php文件。

具體修改的代碼是:

1、在thinkphp分頁類文件Page.class.php的最后加上一個自定義函數,用于替換url中的參數分隔符號,函數內容如下:

private function clin_page_url($parameter){

  $url = U('');

  $url = str_replace('.html', '?', $url);

  foreach ($parameter as $key => $value) {

     $url .= $key.'='.$value.'&';

  }

  $url = substr($url, 0,-1);

  return $url;

}

自學php博客

2、修改最終生成的url

在Page.class.php文件的第99行,將原來的

$url=U('',$parameter);

修改為:

$url            =   $this->clin_page_url($parameter); // 生成標準的url

經過這兩步修改就可以解決thinkphp分頁亂碼的問題了。


修改后的文件:

Page.class.rar


自學php博客
請先登陸后發表評論
  • 最新評論
  • 總共0條評論
  • ? 2014-2016 zixuephp.cn 版權所有
  • ICP證:皖ICP備16012107號
  • 聯系郵箱:[email protected]
  • 交流請加微信:weibobf2899 或掃下方二維碼
双大床红利扑克1手APP