Можете ли вы помочь мне, пожалуйста, с аутентификацией в Codeigniter? Я начинаю с CI вчера, поэтому я немного растерялся.
я нашел Tank auth library, но, похоже, он не совместим с CI3. Это выдает ошибку: «Неизвестный столбец« данные »в« списке полей »» из библиотек / Session / drivers / Session_database_driver.php
Библиотека сеанса ожидает данные имени поля в таблице ci_session. Моя таблица ci_session взята из загрузки авторизации Tank, и вместо нее есть поле user_data. Что я могу сделать? Или есть лучшая библиотека аутентификации для CI3? Я хотел бы найти lib с аутентификацией + авторизацией.
Поздний ответ, но это может быть полезно для кого-то. Получить Tank Auth работает в Codeigniter 3:
В config.php
удалите параметры, которых больше нет в новом значении по умолчанию config.php
и добавьте те, которые указаны в руководство по обновлению.
Задавать sess_driver
в files
:
$config['sess_driver'] = 'files';
И добавить абсолютный путь к sess_save_path
опция:
$config['sess_save_path'] = BASEPATH . 'sessions';
в Auth
контроллер, удалить $this->load->library('security');
это потому, что библиотека безопасности загружается автоматически.
В тот же контроллер добавьте $this->load->helper('security');
— это позволяет чистый метод XSS, который используется в стандартном контроллере Tank Auth. Вы можете также удалить xss_clean
из правил проверки в Auth
Контроллер — теперь они устарели. Видеть это этот Вопрос переполнения стека.
Все это, конечно, при условии, что остальные инструкции в руководство по обновлению были соблюдены.
Других решений пока нет …