私はcodeigniter tank authライブラリを使用してユーザーと作業しています。私は、ユーザーが次のようにログインしている場合は任意のコントローラ、機能チェックをアクセスしようとするたびに:それはログインしていた場合Codeigniter tank auth - 知られていない理由でユーザーがログアウトしました
if($this->tank_auth->is_logged_in()) {
、私はモデルをロードではなく、場合、私は、ログインページにリダイレクトを行います。これは1ヶ月間このように働いていますが、今ではアプリケーションを拡張して、同じテクニックを使用する他のコントローラを構築しましたが、ファイルは別のフォルダにあります。以前の作業アプリケーションはまだ素晴らしいですが、このアプリケーションでは新しいフォルダから(これは基本的にそのアプリケーション用の新しいモジュールですが、同じログインページを使用しますが、モジュールのユーザー選択に従って異なる方法でリダイレクトされます)コントローラに問題はありませんが、ある時点では、ユーザーがログインしていないことを通知します。期限切れのセッションではありません。セッションを延長して3秒後にインターバルはユーザーをログアウトさせます...私は新しいコントローラーとは何も変わりませんが、しばらくしてから5分、時には15分かかることがあります...なぜか、私のセッションで何か乱れていますか?私は何かのためにセッションを使用しません...
これは何について知っていますか?または任意の提案?私は、もし要求されれば、詳細を与えることができます。
ありがとうございました。
EDIT:新しいモジュールが同じのCodeIgniterインスタレーションではそれ以上のコントローラで構成され、それは同じCIの設定、同じタンクの認証ライブラリと連動して機能は、次のようにメインの要求コントローラにコピーされます。
class Requests extends Controller
{
function __construct()
{
parent::__construct();
$this->load->helper(array('form', 'url'));
$this->load->helper('date');
$this->load->library('form_validation');
$this->load->library('tank_auth');
}
..............
more functions
..............
function getServices() { /// One of the functions that the new module uses
if (!$this->tank_auth->is_logged_in()) {
return;
} else {
$this->load->model('requests/getServices');
$data['tid'] = $_POST['tid'];
$this->getServices->showData($data);
}
}
私が取り組んでいるレガシーコードから同じ問題を抱えています。あなたは何をしたの?コード内で$ _SESSIONの使用を直接削除しましたか? – Strategist