Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.05.2017, 20:32   #1
ericsoft
Новичок
Джуниор
 
Регистрация: 19.05.2017
Сообщений: 2
Печаль Авторизация через фейсбук для DLE

Всем здравствуйте.
Прошу помощи, ибо своих знаний не хватает.
Слетела авторизация с помощью фейсбук, движок сайта DLE 10.3, пользуюсь модулем VAuth 8 free. При попытке авторизоваться попадаю на пустую страницу со ссылкой вида:
адрес_сайта/engine/modules/vauth/auth.php?auth_site=facebook&code=AQ BRIOpkQhAFN9_2p4xEq18YD9HpO1yUDoaoy 8WHMYJOsTKfK_ojU18t2o1boVQCfWVojZda wUXDbBYbX_fWtsXqC8sWk-ZhMwnEuMfttYlioZIoY20qQyaO01Q5dDjHc Jy7mlv62wX8rqkS8NUCnY5EjECXPcL9fCxQ PVRiFLUoIXxQgjC2mdrP09O9gBlih-uID4m86gay3iWlunTwsoNb7AP4ceBwShGWU 232DTmn7yb6A4A7-RfZMA0z9zoRzixShycdCGN4XN9e8APNszdt XnhG2NXAPfJP1tpRn7wYFyQ-3j9tV8ztnU8KZIYvs0dm60Yd5Ha9nO3cwgS RnB3O#_=_
При этом авторизация через остальные сети работает исправно, подозреваю, что проблема в API Facebook.
Связался с разработчиком модуля, но тот ответил, что работа над ним прекращена и помочь он не может.
Вот код файла, отвечающего за авторизацию:
PHP код:
<?php
 
if( ! class_exists'FbFunctions' ) )    {
 
    class 
FbFunctions extends VAuthFunctions {
 
        function 
oauth_data() {
   
            global 
$site_url;
            global 
$vauth_config;
       
            
$oauth = array();
            
$oauth['needfriends'] = 'no';
            
$oauth['needhash'] = 'yes';
            
$oauth['prefix'] = 'fb';
            
$oauth['prefix2'] = 'facebook';
            
$oauth['disconnect_str']     =    "updtime='', ".$oauth['prefix']."_user_friends='', ".$oauth['prefix']."_connected='0', ".$oauth['prefix']."_user_id=''";
            
$oauth['fields']            =    'user_birthday,user_status,email,public_profile';
            
$oauth['auth_url']            =    'https://www.facebook.com/v2.9/dialog/oauth?client_id=';
            
$oauth['app_id']            =    $vauth_config['facebook_app_id'];
            
$oauth['app_secret']        =    $vauth_config['facebook_app_secret'];
            
$oauth['redirect_url']        =    $site_url '/engine/modules/vauth/auth.php?auth_site=facebook';
            
$oauth['token_request']        =    'https://graph.facebook.com/v2.9/oauth/access_token?client_id=';
            
$oauth['site_url']            =    $site_url;
            
$oauth['group']                =    $vauth_config['facebook_user_group'];
 
            if (empty(
$oauth['group'])) $oauth['group'] = 4;
            if (empty(
$oauth['app_id'])) die('Не указан идентификатор приложения Facebook');
            if (empty(
$oauth['app_secret'])) die('Не указан секретный код приложения Facebook');
       
            return 
$oauth;
       
        }    
 
   
 
        
// ** Функция авторизации в Facebook
        
function vauth_auth($oauth) {
   
            global 
$auth_code;
   
            
$_SESSION['auth_from']    =    'facebook';
       
            if     ( empty(
$oauth['access_token']) and empty($auth_code) ) {
                
header('Location: '.$oauth['auth_url'].$oauth['app_id'].'&redirect_uri='.$oauth['redirect_url'].'&fields='.$oauth['fields']);
                die;
            }
       
            if ( !empty(
$auth_code) ) {
           
                
parse_str($this->vauth_get_contents($oauth['token_request'].$oauth['app_id'].'&redirect_uri='.$oauth['redirect_url'].'&client_secret='.$oauth['app_secret'].'&code='.$auth_code));
                
$oauth['access_token'] = $access_token;    
                if (!empty(
$oauth['access_token'])) $_SESSION['facebook_access_token']    =    $oauth['access_token']; else { die($my_little_url);header('Location: '.$oauth['site_url']); die(); }
       
            }
       
            return 
$oauth;
       
        }
 
        
// ** Функция получения информации пользователя из Facebook
        
function get_oauth_info($oauth) {
   
            global 
$vauth_text;
            global 
$db;
            global 
$site_url;
       
            
$oauth_info        =    json_decode($this->vauth_get_contents('https://graph.facebook.com/v2.9/me?access_token='.$oauth['access_token']),FALSE); //Получаем информцию о пользователе
       
            
$oauth['uid']        =    $this->conv_it($oauth_info->id);
            
$oauth['name']        =    $this->conv_it($oauth_info->name); //Имя и фамилия
            
$oauth['nick']        =    $this->conv_it($oauth_info->username); //Логин
            
$oauth['birthday'] =    $this->conv_it($oauth_info->birthday); //Логин
            
$oauth['birthday'] =    str_replace('/','.',$oauth['birthday']);
            
$oauth['location']        =    $this->conv_it($oauth_info->location->name); //Местоположение
            
$oauth['last_name']    =    $this->conv_it($oauth_info->last_name); //Фамилия
            
$oauth['first_name']    =    $this->conv_it($oauth_info->first_name); //Имя
            
$oauth['email']        =    $this->conv_it($oauth_info->email); //Мыло
                   
            
$oauth['username']    =    $oauth['first_name']  . ' ' .  $oauth['last_name'];
            
$oauth['fullname']    =    $oauth['username'];
            
$oauth['bio']        =    $db->safesqltrimhtmlspecialcharsstrip_tags$oauth['bio'] ) ) ) );
            
$oauth['name']        =    $db->safesqltrimhtmlspecialcharsstrip_tags$oauth['name'] ) ) ) );
            
$oauth['nick']        =    $db->safesqltrimhtmlspecialcharsstrip_tags$oauth['nick'] ) ) ) );
            
$oauth['quotes']    =    $db->safesqltrimhtmlspecialcharsstrip_tags$oauth['quotes'] ) ) ) );
            
$oauth['location']    =    $db->safesqltrimhtmlspecialcharsstrip_tags$oauth['location'] ) ) ) );
       
            
$oauth['update_time']    =    time();
       
            return 
$oauth;
        }
    }
}
 
$vauth_api = new FbFunctions ();        
   
?>
На сайте изменений никаких не было, ТП хостинга тоже говорит, что проблема на стороне моего сайта.
Панически прошу помощи, бьюсь второй день, ни к чему не пришел.
ericsoft вне форума Ответить с цитированием
Старый 27.05.2017, 13:04   #2
Aison
Новичок
Джуниор
 
Регистрация: 27.05.2017
Сообщений: 1
По умолчанию

Задай вопрос на dle-faq.ru . и впредь, старайся задавать вопросы по DLE там, на таких форумах это бесполезно делать
Aison вне форума Ответить с цитированием
Старый 27.05.2017, 14:41   #3
ericsoft
Новичок
Джуниор
 
Регистрация: 19.05.2017
Сообщений: 2
По умолчанию

Спасибо всем, кто ответил или хотел ответить, вопрос решил своими силами. Тему можно закрывать.
ericsoft вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Программная авторизация на сайте DLE Vladislavik36 C# (си шарп) 3 06.12.2013 00:11
Авторизация через телефон. NSvirus Свободное общение 2 25.08.2013 19:38
Авторизация через Google Godfather07 Помощь студентам 0 02.03.2012 14:41
Авторизация через FTP для открытия файла excel ru3000 Microsoft Office Excel 1 18.11.2011 05:30
Авторизация через FaceBook Gorychev PHP 3 01.11.2011 17:19