[PHP-users 27042] Re: PEAR::Pagerで文字化け
shima tetuo
mlmlml @ lily.freemail.ne.jp
2005年 10月 3日 (月) 10:10:50 JST
tetuoです。
> 最初はうまくいったと思って喜んでいたのですが、
> マルチバイト文字を使用して検索をかけて、その後
> $pager->getLinks()
> で取得したリンクでページを遷移しようとすると、
> 日本語が文字化けしてエラーが起きていました。
ここが気になったのですが、パラメータとしてマルチバイト文字があるかと思い
ますが、適切なエンコーディングをかけていないのではないのでしょうか?
その為、リンクに含まれる未エンコーディングのパラメータで遷移する際、遷移
した先で、文字化けが起こるのではないでしょうか?
※憶測なのではずれている可能性があります。ソースコードを添付して頂ければ
より分かるかと思います。
Pagerは使った事がないのですが、Pager_Slidingはあります。
通常、パラメータはGET値として全てPagerがページリンクに埋め込みますが、特
定の処理がパラメータに必要な場合、Pagerに以下のパラメータを渡します。
* - append (bool): if true pageID is appended as GET value to the
* URL - if false it is embedded in the URL
* according to "fileName" specs
* - path (string): complete path to the page (without the page name)
* - fileName (string): name of the page, with a %d if append=true
pathは、PageID以外の部分で、必要となるGET値を設定します。
(aaa=000&bbb=111&.......)
↑ここで、マルチバイト文字であるパラメータをエンコードしてみてはどうでしょ
うか?
fileNameは、PageIDを独自で設定する為のものです。
例:'fileName' => '&pageID=%d'
appendは、fileNameを使う場合、falseにします。
tetuo
mlmlml @ lily.freemail.ne.jp
http://mlmlml.seesaa.net/
PHP-users メーリングリストの案内