Добрый день уважаемые друзья! Подскажите пожалуйста по следующему вопросу: Я делаю сайт, решил взять форум SMF версии 1.1.8. Авторизацию хочу сделать общию, через куки, т.е. база данных полностью форумная. Только вот не получается ни как Все ресурсы облазил, не получилось лазил по соурсам, в том числе в Subs-Auth.php, но результатов не дало... что бы считывать кукисы, а потом автоматически авторизоваться если они есть.. или записать если нет... Пожалуйста подскажите мне, как же можно реализовать... Чтобы после авторизации на сайте можно было заходить на форум и обратно... И что бы кукисы были общими. В зарание благодарю!
А основной сайт на каком движке? Возможно, уже есть готовые скрипты интеграции для смф и конкретного движка сайта
т.е. движок сам пишу... просто хотел сделать авторизацию общию... Сейчас сделал такой запрос : print_r($_COOKIE); получил результат: Array ( [user_last_visit] => 1234154583 [PHPSESSID] => 5e3f91958ad7d209b31a90a76a89f4d8 [name] => bret [SMFCookie386] => a:4:{i:0;s:1:\"2\";i:1;s:40:\"bb86934bbd2bd3029410ebdcba88108fd2e69f2a\";i:2;i:1423392972;i:3;i:0;} ) Видно пароль шифруется. А мне бы из этого пароль и логин для авторизации
Лучше возьми движок который интегрируется с smf, и просто добавишь в движке те страницы какие тебе нужны, и безопаснее и легче и удобнее))
возможно можно через курл.... чтото типа так... когда авторихуешся на основном сайте куки записать в переменную и потом послать их форуму... как то так.. PHP: function pregCookie($head) { preg_match_all('#Set-cookie: (.*;)#UiS',$head,$mass); return implode('',$mass['1']); } $co=pregCookie($head); // тут у нас куки $ch = curl_init(); $url="http://site/forum/login.php"; // куда посылать можно в снифере посмареть... curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5'); curl_setopt($ch, CURLOPT_COOKIE, $co); curl_setopt($ch, CURLOPT_COOKIESESSION, true); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_FOLLOWLOCATION,1); curl_setopt($ch, CURLOPT_HEADER, 0); $e=curl_exec($ch); // ответ сервера curl_close($ch);