Я использую библиотеку autign библиотеки tankigniter для работы с пользователями, и она отлично работает. Всякий раз, когда я пытаюсь получить доступ к любому контроллеру, функция проверяет, если пользователь вошел в систему, как это:Резервуар-накопитель Codeigniter - пользователь выходит из строя без какой-либо известной причины
if($this->tank_auth->is_logged_in()) {
Если он вошел, я загружаю модель, но если нет, то я редирект на страницу входа в систему. Он работает так вот в течение одного месяца, но теперь я расширяю свое приложение и строю некоторые другие контроллеры, которые используют ту же технику, но файлы находятся в другой папке. Предыдущее рабочее приложение по-прежнему отлично работает, но в этом приложении из новой папки (это, в основном, новый модуль для этого приложения, использует одну и ту же страницу входа, но перенаправляет по-разному в зависимости от выбора пользователем модуля). Я могу войти в систему правильно, я могу сделать любой запрос к контроллеру без проблем, но в какой-то момент он сообщает мне, что пользователь не вошел в систему. Срок действия не закончился или что-то в этом роде, это похоже на то, что я делаю один запрос сейчас, расширяя свою сессию, а затем через 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 2015-10-30 01:12:38