Как передать данные сеанса в CKFinder с CodeIgniter 3.x?
Я знаю, что уже существует существующий вопрос, идентичный этому ( Как передать сессию в ckfinder в codeigniter 3?), Но это не помогает вообще. Там только 1 ответ, и он не работает для меня, и очень мало объяснений.
У меня есть сайт CI, на котором пользователь может войти и редактировать некоторые вещи, используя CKEditor. Я также установил CKFinder, но я не могу передать какие-либо данные сеанса в файл конфигурации CKFinder для проверки подлинности имени входа в целях безопасности. Глобальный $_SESSION
переменная просто возвращает Array() 1
и не содержит никаких данных сеанса (и да, я использую session_start();
).
Используя ответ другого поста в качестве основы, я попытался извлечь данные из $_COOKIE
но, казалось, не было ничего особенно полезного. Здесь нет ci_session
в данных cookie. Ближайшая вещь PHPSESSID
но я не смог получить от этого ничего полезного.
Любая помощь будет оценена. Я уже слишком долго занимался этим проектом. Спасибо!
1 ответ
Вы не должны изменять конфигурационный файл, записывая его для каждого пользователя. Поскольку это коммерческое приложение, я не могу просмотреть документы для него, но это может помочь.
- Установите ссылку на странице пользователя на CKfinder, чтобы показывать только, если пользователь вошел в систему.
- Установите ссылки CKfinder контроллера в CI, чтобы определить, вошел ли пользователь в систему или нет и разрешен ли (то есть аутентифицирован и авторизован), в противном случае запрос отклоняется.
- Либо создайте библиотеку CI для CKfinder, которая запускает ее из CI.
Хорошо зная CKeditor, я уверен, что CKfinder будет достаточно хорошо документирован, чтобы достаточно легко интегрироваться с фреймворками и существующими системами. CKeditor - прекрасный скрипт (хотя и с ограничениями), поэтому я бы предположил, что такое же качество применимо и к CKfinder.
И да, данные сеанса CI не доступны вне CI. Сторонние приложения, подобные этому, могут быть интегрированы с CI с использованием стандартных включений напрямую или с библиотекой и т. Д. В рамках CI. Фактически, одна из замечательных особенностей CI - это возможность писать небольшие библиотеки, которые могут легко включать практически любое стороннее приложение с относительной простотой реализации.
Эта ссылка поможет: Codeigniter 3 - Сеанс доступа из внешней установки Codeigniter
Без дальнейших примеров кода или более точного примера проблемы я не совсем уверен, как я могу помочь больше, чем это. Я надеюсь, что это могло бы помочь, но, вероятно, это не так. Сожалею.