Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
vuhu
2 / 2 / 0
Регистрация: 13.11.2010
Сообщений: 51
1

Авторизация на сайте через соцсеть

08.07.2017, 17:50. Просмотров 227. Ответов 2
Метки нет (Все метки)

всем привет
хочу сделать ауторизацию на саите через facebook
нашол вариант на ютубе, но что-то не так пошло.
4 фаила: index.php auth.php function.php и config.php

index.php:
PHPHTML
1
2
3
4
5
6
7
8
<?
require "config.php";
require "functions.php";
 
$path = URL_AUTH."?"."client_id=".CLIENT_ID."&redirect_uri=".urlencode(REDIRECT)."&response_type=code";
?>
 
<a href="<? echo $path;?>">Авторизация</a>
auth.php:
PHPHTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?
require "config.php";
require "functions.php";
 
if($_GET['code']) {
    $result = get_token($_GET['code']);
    if($result) {
        print_r(get_data($result));
    }
}
else {
    exit('Ошибка параметров');
}
?>
function.php
PHPHTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
function get_token($code) {
    $ku = curl_init();
    
    $query = "client_id=".CLIENT_ID."&redirect_uri=".urlencode(REDIRECT)."&client_secret=".SECRET."&code=".$code;
    
    curl_setopt($ku,CURLOPT_URL,TOKEN."?".$query);
    curl_setopt($ku,CURLOPT_RETURNTRANSFER,TRUE);
    
    $result = curl_exec($ku);
    if(!$result) {
        exit(curl_error($ku));
    }
    
    if($i = json_decode($result)) {
        if($i->error) {
            exit($i->error->message);
        }
    }
    else {
        
        parse_str($result,$token);
        
        if($token['access_token']) {
            return $token['access_token'];
        }
    }
}
function get_data($token) {
    
    $ku = curl_init();
    
    $query = "access_token=".$token;
    
    curl_setopt($ku,CURLOPT_URL,GET_DATA."?".$query);
    curl_setopt($ku,CURLOPT_RETURNTRANSFER,TRUE);
    
    $result = curl_exec($ku);
    if(!$result) {
        exit(curl_error($ku));
    }
    
    return json_decode($result);
    
}
config.php
PHPHTML
1
2
3
4
5
6
7
8
<?
define("URL_AUTH","https://www.Facebook.com/dialog/oauth");
define("CLIENT_ID","Идентификатор приложения");
define("SECRET","Секретный ключ приложения");
define("REDIRECT","http://avtomirock.com.ua/fb/auth.php");
define("TOKEN","https://graph.Facebook.com/oauth/access_token");
define("GET_DATA","https://graph.Facebook.com/me");
?>
ну само-сабой config прописал своими данними

создал соответствуюшее приложение в

но что-то не работает, $result is NULL
посмотрел дату кода: 2014
может за эти 3 года чтото изминилось? код ведь правелны?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.07.2017, 17:50
Ответы с готовыми решениями:

Авторизация на сайте через Facebook
Не работает авторизация на сайте через Facebook.. выдает ошибку:...

Автоматическая авторизация на сайте через форум
Доброго Всем времени суток! Подскажите пожалуйста, в какую сторону капать: Есть сайт + форум. ...

Авторизация на сайте который использует вход через соц сети?
Всем доброго дня, передо мною стала задача выполнить вход на сайт который использует вход через...

Авторизация на сайте
У меня есть сайт с админ панелькой, мне надо сделать так , что бы на страницу...

авторизация на сайте
Господа, приветствую! есть вопрос - на сайте есть форма авторизации. Вот кусок исходного кода ...

2
tarasalk
1210 / 723 / 288
Регистрация: 13.06.2013
Сообщений: 2,544
08.07.2017, 18:06 2
Цитата Сообщение от vuhu Посмотреть сообщение
нашол вариант на ютубе, но что-то не так пошло.
Ясень пень. На ютубе в основном подделки от школьников. Тру отцы хранят проекты на github.
Цитата Сообщение от vuhu Посмотреть сообщение
может за эти 3 года чтото изминилось?
Дак проверьте. Я вот за 5 минут нашел на оф.сайте готовое SDK.
1
vuhu
2 / 2 / 0
Регистрация: 13.11.2010
Сообщений: 51
08.07.2017, 19:05  [ТС] 3
Цитата Сообщение от tarasalk Посмотреть сообщение
Дак проверьте. Я вот за 5 минут нашел на оф.сайте готовое SDK.
после обявлениа $fb страница виснет
PHPHTML
1
2
3
4
5
$fb = new Facebook\Facebook([
  'app_id' => '{app-id}', // Replace {app-id} with your app id
  'app_secret' => '{app-secret}',
  'default_graph_version' => 'v2.2',
  ]);
app_id и app_secret пробовал брать как из константи в config.php, так и вручную прописивать
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.07.2017, 19:05

Авторизация на сайте
Здравствуйте. Не работает авторизация на сайте. Код с курса Жур Артур. Обработкич auth.php...

авторизация на сайте
Всем привет. помогите кто чем может Делаю на сайте авторизацию все вроде нормально авторизуется...

Авторизация на сайте
Подскажите, что нужно сделать, чтобы когда один пользователь при авторизации попадал на одну...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru