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

thinkphp自帶的分頁類存在bug,例如當咱們搜索關鍵詞時,關鍵詞爲中文,第二次點擊分頁的時候,就會亂碼,不能正常的顯示咱們須要的頁碼。本文就這一問題給出解決方案。
出現亂碼的問題是由於thinkphp分頁類中的,構造url時存在的問題,thinkphp的分頁url是使用"/"來分隔參數的,在將數據傳遞到url中時,通過url加密,第二次傳遞的時候就會亂碼了,而若是咱們使用"?"和"&"來分隔參數的話,就不會出現這個問題了。
因此要修改的內容是thinkphp的分頁類文件:/ThinkPHP/Extend/Library/ORG/Util/Page.class.php文件。
具體修改的代碼是:
一、在thinkphp分頁類文件Page.class.php的最後加上一個自定義函數,用於替換url中的參數分隔符號,函數內容以下:php

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博客
二、修改最終生成的url
在Page.class.php文件的第99行,將原來的html

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

修改成:thinkphp

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

通過這兩步修改就能夠解決thinkphp分頁亂碼的問題了。函數


原文地址:自學PHP博客[1]: http://www.zixuephp.cn/index....this

相關文章
相關標籤/搜索