[Codeigniter-users] sessionクラスのラッパーを作成しました。

Back to archive index

kunitsuji tsuji****@m-s*****
2008年 12月 6日 (土) 19:13:36 JST


 kunitsujiです。

久しぶりの投稿ですが。

CodeIgniterのセッションのラッパーを作成しました。
CI1.7.0をお使いの方でソースのテストや動作検証をしていただける方いらっし
ゃったらご連絡ください。

概要:
application/libraries/にSession.php
コンストラクタで
どのセッションタイプを使うかを判定

パターンとして
モバイルの場合
1.CIのDBに保存するタイプのセッションを拡張した
mobile_ci_sessionクラスを利用する
2.PHPセッションを利用する
PCの場合
1.CIの標準のセッションを利用する
2.PHPセッションを利用する

を設定情報に基づいて判定します。

また、モバイルの場合は
URLヘルパのanchor()関数を呼び出すと
自動で生成するURLにsessidをつけてくれます。
例)http://hoge.com/index.php?sessid={session_id}

mobile_ci_sessionクラス、PHPセッションクラスでは
sessidがURLについていればそれを使ってセッション情報を確認します。
PCの場合は仮にURLに上記のパラメータが付いていた場合、UNSETします。

こんな感じ。
使い方としては、
設定ファイルに
セッションのタイプを記述
ドコモ以外の携帯でクッキーを使うか全部携帯の場合はクッキーを使わないかを
記述
これで接続端末によって自動で動作します。

※public function __call($func, $args)やpublic function __set($func, 
$args)
等を使っているため、PHP5以上じゃないと動作しません。

また、完全に動作させようと思うと、
mobileidクラスが必要になります。
これは携帯の種別、ID、3Gかどうかを取り出すものです。

セッションを使ってログイン情報を判定しようと思うと
authクラスが必要になります。

セッションクラスのコードをれびゅーするのであればセッションクラスのみでだ
いたいわかるかと思いますが、
アプリケーションとして動作させるには、その他のファイルが必要になります
ね。。。
MyNETS2というアプリケーションでテストしていますので、そちらの動作テスト
を行いたいという方がいらっしゃったらそちらも合わせてご連絡ください。



Codeigniter-users メーリングリストの案内
Back to archive index