Получаю ошибку Notice: Trying to get property of non-object in /home/u852405559/public_html/index.php on line 178
после того как я войду на мой веб-сайт с Steam.Извещение: Попытка получить свойство non-объекта - json
Line 178 является foreach((array)$json_decoded->response->players as $player) {
Вот строки 168 до 195. Пожалуйста, помогите мне
} elseif($openid->mode == 'cancel') {
echo 'User canceled auth';
} elseif($openid->validate()) {
$id = $openid->identity;
$ptn = "/^http:\/\/steamcommunity\.com\/openid\/id\/(7[0-9]{15,25}+)$/";
preg_match($ptn, $id, $matches);
$steamid = $matches[1];
$url = "http://api.steampowered.com/ISteamUser/GetPlayerSummaries/v0002/?key=$_STEAMAPI&steamids=$steamid";
$json_object = file_get_contents($url);
$json_decoded = json_decode($json_object);
foreach((array)$json_decoded->response->players as $player) {
$url = "http://api.steampowered.com/IPlayerService/GetOwnedGames/v0001/?key=$_STEAMAPI&steamid=$steamid&format=json";
$json_object2 = file_get_contents($url);
$gamesOwned = json_decode($json_object2);
$ownsCSGO = 0;
foreach($gamesOwned->response->games as $game) {
if($game->appid == 730) {
$ownsCSGO = 1;
break;
}
}
if($ownsCSGO == 0) {
echo "<script> $(document).ready(function() { Materialize.toast('This steam account does not have CS:GO'); }); </script>";
} else {
Предлагает json_decode не увенчался успехом. Попробуйте 'var_dump ($ json_decoded);' и см. – rjdown
@rjdown. Проверьте тип значений var_dump, предположив, что тип объекта является массивом – AndreL
var_dump возвращает с NULL –