Форум программистов, компьютерный форум, киберфорум
PHP: API, боты
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.95/22: Рейтинг темы: голосов - 22, средняя оценка - 4.95
0 / 0 / 1
Регистрация: 07.06.2015
Сообщений: 51
1

Авторизация через Steam API

29.06.2015, 21:48. Показов 4556. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день, столкнулся со странной проблемой:
Имею два сайта с одинаковым "движком" (самописный скрипт), с первого сайта залил на второй, поменял только доммен, зарегал для него steam api key нажимаю аторизоваться и выводит ошибку на 84 строке:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
          foreach ($json_decoded->response->players as $player) {
            $sessionid = md5(rand(100000, 999999) . rand(100000, 999999));
            $sessionid .= md5(rand(100000, 999999) . rand(100000, 999999));
            $sessionid = $db->real_escape_string($sessionid);
            $avatar = $db->real_escape_string($player->avatarfull);
            $personaname = $db->real_escape_string($player->personaname);
            $profileurl = $db->real_escape_string($player->profileurl);
            $query = $db->query("SELECT * FROM `users` WHERE `steamid` = '{$steamid}'");
            if($query->num_rows > 0) {
                $db->query("UPDATE `users` SET `sessionid` = '{$sessionid}', `img` = '{$avatar}', `name` = '{$personaname}', `profile` = '{$profileurl}' WHERE `steamid` = '{$steamid}'");
            } else {
                $db->query("INSERT INTO `users` (`steamid`, `sessionid`, `img`, `name`, `profile`) VALUES ('{$steamid}', '{$sessionid}', '{$avatar}', '{$personaname}', '{$profileurl}')");
            }
            setcookie('steamid', $matches[1], time() + $one_year, '/');
            setcookie('sessionid', $sessionid, time() + $one_year, '/');
            header("Location: /");
        }
на самой первой строке: foreach ($json_decoded->response->players as $player) {
Ошибка: Warning: Invalid argument supplied for foreach()
В чём проблема? На 1 сайте такой нету ошибки, код одинаковый.

Заранее спасибо!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.06.2015, 21:48
Ответы с готовыми решениями:

Авторизация через Steam API
Создаем авторизацию с помощью Steam API (OpenID) 1. Создаем в директории сайта папку...

Steam API - как можно получить медиану цен через API?
Ребят, как можно получить медиану цен через API ? Интересует количество продаж за последний день....

Авторизация через steam
привет . Кто понимает как работает OpenId помогите решить проблему . у меня есть код <?php ...

Авторизация через steam openID
При попытке авторизоваться на сайте через steam, выдает вот такую ошибку Warning: Cannot modify...

2
669 / 640 / 335
Регистрация: 26.04.2014
Сообщений: 2,122
30.06.2015, 09:35 2
Что будет показывать
PHP
1
var_dump($json_decoded);
перед циклом на первом сайте и на втором? Сравните результаты.
0
0 / 0 / 1
Регистрация: 07.06.2015
Сообщений: 51
30.06.2015, 14:41  [ТС] 3
На первом сайте, на котором всё работало, теперь появились ошибки:
На 73 строке:
PHP
1
header('Location: ' . $openid->authUrl());
Warning: Cannot modify header information - headers already sent by (путь...)
Вот фрагмент кода, с 73 строкой:
PHP
1
2
3
4
5
6
7
8
if(!$openid->mode) 
{
    if(isset($_GET['login'])) 
    {
        $openid->identity = 'http://steamcommunity.com/openid/?l=english'; 
        header('Location: ' . $openid->authUrl());
    }
} else {
А на втором сайте, к сожалению, всё та-же ошибка..
(Я правильно сделал?:
PHP
1
2
var_dump($json_decoded);
        foreach ($json_decoded->response->players as $player) {
Добавлено через 9 минут
В похожей теме говорят, что возможно надо поменять file_get_contents на "cUrl версию" кто знает, как?

Добавлено через 3 часа 45 минут
... Ответ был прост: https://www.cyberforum.ru/post7183766.html
Клозед!
0
30.06.2015, 14:41
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.06.2015, 14:41
Помогаю со студенческими работами здесь

Не логинится через steam web api
Здравствуйте. Делаю рулетку для cs go (взял паблик исход), подключил БД и указал API key в...

Получить account_id dota 2 через steam api
Добрый день всем. Разобрался как делать авторизацию через стим апи. Разобрался как делать всякие...

Не могу создать авторизацию на сайте через Steam web API
Пересмотрел все способы добавления авторизации, но ничего не понял, пожалуйста кто может помочь,...

Steam и Api
Здравствуйте!Для общего развития решил сделать сайт,поставить авторизацию через стим по данной...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru