Вы не вошли.
Для авторизации в CMS Minecraft Shop через другой домен нужно добавить в код авторизации на другом сайте:
$_SESSION['playername'] = 'user';
$_SESSION['id'] = 'user_id';
$_SESSION['pm'] = 'pm_unread';
Для снятия ограничения на установку кук с другого домена нужно перед обявлением сесси дописать:
$params = session_get_cookie_params();
$params['domain'] = '.vpn.by'; // название домена второго уровня (вначале точка)
if(version_compare(PHP_VERSION, '5.2', '<'))
{
session_set_cookie_params($params['lifetime'], "/", $params['domain']."; HttpOnly", $params['secure']);
}
else
{
session_set_cookie_params($params['lifetime'], "/", $params['domain'], $params['secure'], true);
}
if($sid) @session_id($sid);
@session_start(); // здесь объявляем сессию
Инструкции по интеграции с CMS Minecraft Shop:
После интеграции авторизации, можете в CMS Minecraft Shop поменять форму входа на свой сайт с отправкой редиректа назад в магазин и так же можно поступить с кнопкой выхода.
Вне форума
То есть если я буду авторизован в DLE и зайду на мойсайт.ru/shop/ я буду авторизован и там без ввода логина и пароля?
[ Да ] // Online
Вне форума
А для Joomla сделаете гайд?
Вне форума
По аналогии делайте пожалуйста.
Вне форума
На Joomla не получаетсо, мозг себе уже месяц выношу, видимо нужно знать или API Joomla'ы или идти и учить PHP… правда это долго и апи всё равно придётся знать.
Вне форума
Сделайте на IPB, так как CMS последнее время очень востребована, а DLE падает в забвение, так как у CMS MineCraft Shop есть весь нужный функционал.
Вне форума
Если Сайт и CMS MineCraft Shop на разных веб-серверах, все это не поможет.
Вне форума
Если сайт и CMS MineCraft Shop на разных веб-серверах, выносите сессии в базу MySQL. Таблицы сессий создавайте с файловой системой federatedx, что позволяет организовать подключение к удаленным таблицам как к локальным.
Вне форума
Если бы были знания, обязательно так и сделал.
Вне форума
Если сайт и CMS MineCraft Shop на разных веб-серверах, выносите сессии в базу MySQL. Таблицы сессий создавайте с файловой системой federatedx, что позволяет организовать подключение к удаленным таблицам как к локальным.
А можете написать пример структуры таблиц?
Вне форума
По умолчанию файловая система FederateX не доступна в базовой версии MySQL, устанавливать её нужно отдельно или можно использовать MariaDB.
Вне форума
А если это куками передавать на другой домен (вебсервер) ?
setcookie ("name", ''.$member_id['name'].'', time()+3600, "/", ''.$_SERVER['HTTP_HOST'].'');
Принимать и записывать записывать в сессию.
$_SESSION['playername'] = $_COOKIE["name"];
$_SESSION['id'] = $_COOKIE["user_id"];
$_SESSION['pm'] = '0';
К примеру в DLE всегда выдается кука с паролем в (md5) x 2 , чтобы было безопаснее, проверять пароль на принадлежность к нику, а потом записывать в сессию? Так Безопасно или это вообще не вариант?
Вы как специалист, подскажите пожалуйста — это безопасно и так вообще можно делать? Ибо уже рук не приложу, не знаю как быть.
Вне форума
Пароль можно восстановить из хеша, это не безопасно.
Вне форума
PHP-MySQL-Session-Handler — Не разобрался, но сделал по своему.
После успешной авторизации в DLE , делаю инсерт в базу, записываю индефикатор сессии и вместе с ним логин , ид и pm.
В шопе, по индефикатору, селектом забираю из базы логин, ид, pm и заношу в $_SESSION.
Вроде бы авторизует. Так думаю безопаснее…
Вне форума
Не надо городить огородов, в PHP для этой цели есть функция session_set_save_handler.
Пример работы этой функции в предыдущем моём посте.
Вне форума