ECWorks Blog

ECWorks Blog

CakePHPを中心としたサイト開発情報をメインに公開。新しもの好きなので時々製品レポートなんかも。

【KtaiLibrary】バージョン0.3.2公開!

Ktai Libraryのバージョン0.3.1に不具合があったため、急遽0.3.2を公開しました。

詳しい情報は下記にて案内しております。

▼ktailibrary.org : バージョン0.3.2を公開!
http://www.ktailibrary.org/news/8


Tagged as: , , ,

7 Comments

  1. はじめまして。
    うちの職場で CakePHP 1.2.7 と Ktai Library 0.3.2 を使わせて頂くことにしました。
    やはり docomo 端末でセッションIDが毎回変わってしまうという不具合が起こりましたが
    次のように設定することで、セッションが変わってしまう不具合が解消できたので
    ご報告いたします。

    Configure::write(‘Session.save’, ‘php’);
    Configure::write(‘Session.checkAgent’, false);
    Configure::write(‘Security.level’, ‘high’);

    特にcheckAgentをfalseに変更したことで、セッションIDが安定しました。
    これでどうにか業務もうまく行くようです。

    どうも、ありがとうございました。

  2. へっぽこSEさん、有用な情報をありがとうございました。こっちはこのトピックを見落としておりました。
    で最近、docomoでもクッキーが有効なiモードブラウザがある様で、この場合、端末の設定で
    クッキーを殺さないと、Ktai Libraryのセッションが働かないみたいです。

    Mozilla/4.0 (compatible; MSIE 6.0; KDDI-CA38) Opera 8.60 [ja]

    またau携帯が送る上記のユーザーエージェントをチェックすると、以下のエラーが出ますね。

       Notice (8): Undefined offset: 1 [CORE/vendors/ecw/lib3gk_carrier.php, line 205]

  3. こんにちは、MASA-Pさん
    静岡で細々とPHPを書いている。cakephp初心者のこーちと申します。

    質問ですが、こちらでよろしいでしょうか?

    携帯ライブラリーのlib3gk.phpにfunction get_ip_carrierがあります
    でreturn $this->__ip->get_ip_carrier($ip);となっているのでございますが
    lib3gk_ip.phpにget_ip_carrierはございません。
    これは、なにか意味があるのでしょうか?

    なにぶんまだ、cakePHPは勉強中でcakephp+KtaiLibraryでの使用ではなく
    KtaiLibraryだけの利用ですがよろしくお願いします。

  4. ご質問ありがとうございます。素のPHPで使われているのですね!

    ご指摘の件ですが、確かに間違っています。申し訳ございません。
    正しくはLib3gkIp::ip2carrier()を呼ばなければいけないです。
    これは、以前はget_ip_carrier()でコーディングしていたのですが、途中でメソッド名を変更したために起きた不具合のようです(^^;;;

    素のPHPでの利用でしたら、単純にLib3gkIpを直接使われた方が良いかもしれません。

  5. 日ごろこちらのライブラリのお世話になっている者です。
    非常に細かいことですが、場合によっては致命的にもなりうるバグが見つかったのでお知らせします・・・といっても半角スペース1個の問題なんですけど。

    / vendors / ecw / lib3gk_ip.php
    http://github.com/MASA-P/KtaiLibrary/blob/master/vendors/ecw/lib3gk_ip.php

    の56行目、閉じシングルクォーテーションの直前に半角スペースが1つ混入していて、

    > ‘202.229.177.0/24 ‘, //2010.05

    という具合になっているために、IPアドレスに基づくキャリア判定処理に失敗する場合があります。
    開発中のサイトに簡単ログインをおそるおそる実装してみていた際、よりによって自機がこのIPアドレスに該当していたので認証してもらえず焦りました・・・。(笑)
    取り急ぎご報告まで。

  6. あともう1つ、KtaiLibrary / vendors / ecw / lib3gk_tools.php の31行目の
    http://github.com/MASA-P/KtaiLibrary/blob/master/vendors/ecw/lib3gk_tools.php#L315

    > if($this->__carrier->is_softbank() && !$this->is_iphone()){

    という箇所も、Ktaiライブラリーからget_uid()を使おうとした際に以下のエラーの原因になっているようです。

    > Fatal error: Call to undefined method Lib3gkTools::is_iphone() in D:\shouryaku\vendors\ecw\lib3gk_tools.php on line 315

    「$this->is_iphone()」を「$this->__carrier->is_iphone()」とするととりあえずエラーは出なくなりました。

  7. ご指摘ありがとうございます。

    上記2点の不具合については、ktai-devではすでに修正を済ませてあります。
    KtaiLibraryプロジェクトへの反映(バージョンアップ)は少々遅れています。
    申し訳ございません。

    なお、最新のバグ情報は是非 http://www.ktailibrary.org/ をご覧ください。