Форум программистов, компьютерный форум, киберфорум
PHP
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 26.05.2022
Сообщений: 6

Как сделать чтобы отображалось фамилия, имя и фото при авторизации через вк, приложение привязал, фото фамилию нет

06.06.2022, 22:19. Показов 714. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
PHP/HTML
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
<!DOCTYPE html>
<html>
<head>
<title> Авторизация </title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
 
        <link rel="stylesheet" href="css/style.css" type="text/css">
 
        <style>
@import url(https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css);
.sociala a {
    display: inline-block
    text-align: center;
    width: 180px;
    height: 67px;
    float: left;
    background: #fff;
    border: 1px solid #ccc;
    box-shadow: 0 2px 4px rgba(0,0,0,0.15), inset 0 0 50px rgba(0,0,0,0.1);
    border-radius: 24px;
    margin: 0% 80% 0%;
    padding: 6px;
    color: #000;
}
.vka a:hover {background: #5d84ae; color: #fff;}
.social .fa-2x {
    font-size: 30px;
}
</style>
</head>
<body>
<div id="container">
 
<div class="sociala vka">
        <p>
            <strong><a href="auth.php"><i class="fa fa-vk fa-2x">Вконтакте<br><i class="fa fa-sign-in" aria-hidden="true"></i>  Вход</i></a></strong>
        </p>
          </div>
</body>
</html>
отдельный текстовый документ config
PHP
1
2
3
4
5
6
7
8
9
10
11
<?
session_start();
define("APP_ID",'8175335');
define("APP_SECRET",'BceBpZCr4Pn8ml8hJTAe');
define("REDIRECT_URI",'http://ck48823.tmweb.ru/auth.php');
define("URL_ACCESS_TOKEN",'https://oauth.vk.com/access_token');
define("URL_AUTH",'http://oauth.vk.com/authorize');
define("URL_GET_USER",'https://api.vk.com/method/users.get');
 
 
?>
отдельный текстовый документ Auth_Vk
PHP
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
<?
class Auth_Vk {
    
    private $code;
    private $token;
    private $uid;
    
    public function __construct() {
        
        require "config.php";
    }
    
    public function set_code($code) {
        $this->code = $code;
    }
    
    public function set_token($token) {
        $this->token = $token;
    }
    
    public function set_uid($id) {
        $this->uid = $id;
    }
    
    public function redirect($url) {
        header('HTTP/1.1 301 Moved Permanently');
        header("Location:".$url);
        exit();
    }
    
    public function get_token() {
        if(!$this->code) {
            exit("Не верный код");
        }
        
        $ku = curl_init();
        $query = "client_id=".APP_ID."&client_secret=".APP_SECRET."&code=".$this->code."&redirect_uri=".REDIRECT_URI;
        curl_setopt($ku,CURLOPT_URL,URL_ACCESS_TOKEN."?".$query);
        curl_setopt($ku,CURLOPT_RETURNTRANSFER,TRUE);
        
        $result = curl_exec($ku);
        curl_close($ku);
        
        $ob = json_decode($result);
        if($ob->access_token) {
            $this->set_token($ob->access_token);
            $this->set_uid($ob->user_id);
            return TRUE;
        }
        elseif($ob->error) {
            $_SESSION['error'] = "Ошибка";
            return FALSE;
        }
    }
    
    public function get_user() {
        if(!$this->token) {
            exit('Wrong code');
        }
        
        if(!$this->uid) {
            exit('Wrong code');
        }
        
        $query = "uids=".$this->uid."&fields=first_name,last_name,nickname,screen_name,sex,bdate,city,country,timezone,photo,photo_medium,photo_big,has_mobile,rate,contacts,education,online,counters&access_token=".$this->token;
//echo $query;
 
        $kur = curl_init();
 
        
 
        curl_setopt($kur, CURLOPT_URL, URL_GET_USER."?".$query);
 
        curl_setopt($kur, CURLOPT_SSL_VERIFYPEER, false);
 
        curl_setopt($kur, CURLOPT_SSL_VERIFYHOST, false);
 
        curl_setopt($kur,CURLOPT_RETURNTRANSFER,TRUE);
 
        
 
        $result2 = curl_exec($kur);
        
        curl_close($kur);
 
        $_SESSION['user'] = json_decode($result2);
 
        $this->redirect("http://ck48823.tmweb.ru");
 
    }
    
}
?>
отдельный текстовый документ auth
PHP
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
<?
require "Auth_Vk.php";
 
$o = new Auth_Vk();
 
if(!$_GET['code']) {
    
    $query = "client_id=".APP_ID."&scope=offline&redirect_uri=".REDIRECT_URI."&response+type=code";
    
    $o->redirect(URL_AUTH."?".$query);
}
if($_GET['code']) {
    //echo $_GET['code'];
    $o->set_code($_GET['code']);
    $res = $o->get_token();
    
    if($res) {
        $o->get_user();
    }
    else {
        exit($_SESSION['error']);
    }
}
if($_GET['error']) {
    exit($_GET['error_description']);
}
?>
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
06.06.2022, 22:19
Ответы с готовыми решениями:

Как сделать в Photoshop 22.5.1, чтобы при масштабировании фото колесиком мыши фото оставалось в центре?
Вопрос в теме. Добавлю, что я хочу добиться того, чтобы даже если курсор находится вне границ фото, то при масштабировании колесом мыши...

Загружаю фото через модуль, все красиво - на сайте этих фото нет
Здравствуйте! Загружаю фото к статье через модель EvoGallery, все хорошо загружается, перехожу на просмотр - нет фото. Вообще. Чистила...

Как сделать чтобы при нажатии фото увеличивалось?
Люди вот сайт! Вопрос: как сделать чтобы при нажатии фото увеличивалось??!! Очень надо! http://egorikem.2ho.biz/foto.html

1
113 / 115 / 19
Регистрация: 03.06.2022
Сообщений: 756
07.06.2022, 02:56
Попробуйте посмотреть вывод строчки
PHP
1
var_dump($_SESSION['user']);
и не забудьте в начало всех файлов, оперирующих переменной $_SESSION добавить строчку
PHP
1
session_start();
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
07.06.2022, 02:56
Помогаю со студенческими работами здесь

Как сделать так, чтобы при прокрутке фото уходило не до конца?
&lt;script type=&quot;text/javascript&quot; src=&quot;https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js&quot;&gt;&lt;/script&gt; $(function(){ ...

Ввести в окне имя, отчество и фамилию (именно в таком порядке) и преобразовать, чтобы получилось имя и фамилия
Нужно написать программу чтобы она умела: Ввести в окне имя, отчество и фамилию (именно в таком порядке) и преобразовать, чтобы...

Как сделать, чтобы фото имела определенный размер при загрузке на сайт?
Код для загрузки фото и отображение всей папки с фотографиями : &lt;?php $dir='uploades/'; $cols = 3; $files =...

Как поменять код в пайтоне чтобы в конце тестировались не рандомные фото в нейронной сети а фото из папки?
Как поменять код в пайтоне чтобы в конце тестировались не рандомные фото в нейронной сети а фото из папки? Это код из Kaggle и эта часть...

Camera 2 Api, как сделать фото/множество фото без блокировки предварительного просмотра?
При использовании captureBurst или capture, блокируется превью, есть ли возможность делать фото (желательно не одно) и при этом не...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США. Нашел на реддите интересную статью под названием «Кто-нибудь знает, где получить бесплатный компьютер или. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru