Skyrider
05-28-2015, 08:18 AM
I know I'm asking a lot lately, but I'm still learning. Currently, I'm using this code (in attempts) to get the proper value: (inside a *.PHP file)
$url = sprintf("http://api.steampowered.com/ISteamUser/GetPlayerBans/v1/?key=%s&steamid=%s",
$api_key,
$steam_id);
$curl_time = microtime(1);
// Needs curl to actually be able to pull data from steam api because of the special response-behaviour.
$ch = curl_init();
curl_setopt( $ch, CURLOPT_URL, $url );
@curl_setopt( $ch, CURLOPT_FOLLOWLOCATION, true );
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
curl_setopt( $ch, CURLOPT_AUTOREFERER, true );
curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, false );
curl_setopt( $ch, CURLOPT_MAXREDIRS, 5 );
curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT, $vbulletin->options['stc_curl_timeout'] ); #rc1: helps with page delay if steam is down
$tradeban = curl_exec( $ch );
$http_response_header = curl_getinfo( $ch );
$curl_errno = curl_errno($ch);
$curl_error = curl_error($ch);
curl_close($ch);
$tradeban = json_decode($tradeban, 1);
With:
$steam_info['EconomyBan'] = is_array($tradeban) && isset($tradeban['players'], $tradeban['players']['EconomyBan']) ? $tradeban['players']['EconomyBan'] : -1;
To get the value.. however, once I check whatever it grabs, it shows this:
"EconomyBan";i:-1;}
Here's an example of an API result when going to: http://api.steampowered.com/ISteamUser/GetPlayerBans/v1/?key=xx&steamid=xx (<- key removed for obvious reasons)
{
"players": [
{
"SteamId": "76561198024651743",
"CommunityBanned": false,
"VACBanned": false,
"NumberOfVACBans": 0,
"DaysSinceLastBan": 0,
"NumberOfGameBans": 0,
"EconomyBan": "banned"
}
]
}
I need to get the value of the EconomyBan which in this case is "banned". Any help would be appreciated, been trying for hours now. I assume the -1 only works for numbers rather than letters?
Forgot to mention. EconomyBan is already filled in in the steam options plugin (see attachment), so the EconomyBan field should be called. You can ignore the rest of the text on the attachment provided below, the author already has created this steam_level check for me:
$url = sprintf("http://api.steampowered.com/IPlayerService/GetSteamLevel/v0001/?key=%s&steamid=%s",
$api_key,
$steam_id);
$curl_time = microtime(1);
// Needs curl to actually be able to pull data from steam api because of the special response-behaviour.
$ch = curl_init();
curl_setopt( $ch, CURLOPT_URL, $url );
@curl_setopt( $ch, CURLOPT_FOLLOWLOCATION, true );
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
curl_setopt( $ch, CURLOPT_AUTOREFERER, true );
curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, false );
curl_setopt( $ch, CURLOPT_MAXREDIRS, 5 );
curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT, $vbulletin->options['stc_curl_timeout'] ); #rc1: helps with page delay if steam is down
$steamlevel = curl_exec( $ch );
$http_response_header = curl_getinfo( $ch );
$curl_errno = curl_errno($ch);
$curl_error = curl_error($ch);
curl_close($ch);
$steamlevel = json_decode($steamlevel, 1);
with:
$steam_info['player_level'] = is_array($steamlevel) && isset($steamlevel['response'], $steamlevel['response']['player_level']) ? $steamlevel['response']['player_level'] : -1;
Which is working perfectly. I'm merely trying to duplicate the code, and grab the information from a different API instead.
$url = sprintf("http://api.steampowered.com/ISteamUser/GetPlayerBans/v1/?key=%s&steamid=%s",
$api_key,
$steam_id);
$curl_time = microtime(1);
// Needs curl to actually be able to pull data from steam api because of the special response-behaviour.
$ch = curl_init();
curl_setopt( $ch, CURLOPT_URL, $url );
@curl_setopt( $ch, CURLOPT_FOLLOWLOCATION, true );
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
curl_setopt( $ch, CURLOPT_AUTOREFERER, true );
curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, false );
curl_setopt( $ch, CURLOPT_MAXREDIRS, 5 );
curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT, $vbulletin->options['stc_curl_timeout'] ); #rc1: helps with page delay if steam is down
$tradeban = curl_exec( $ch );
$http_response_header = curl_getinfo( $ch );
$curl_errno = curl_errno($ch);
$curl_error = curl_error($ch);
curl_close($ch);
$tradeban = json_decode($tradeban, 1);
With:
$steam_info['EconomyBan'] = is_array($tradeban) && isset($tradeban['players'], $tradeban['players']['EconomyBan']) ? $tradeban['players']['EconomyBan'] : -1;
To get the value.. however, once I check whatever it grabs, it shows this:
"EconomyBan";i:-1;}
Here's an example of an API result when going to: http://api.steampowered.com/ISteamUser/GetPlayerBans/v1/?key=xx&steamid=xx (<- key removed for obvious reasons)
{
"players": [
{
"SteamId": "76561198024651743",
"CommunityBanned": false,
"VACBanned": false,
"NumberOfVACBans": 0,
"DaysSinceLastBan": 0,
"NumberOfGameBans": 0,
"EconomyBan": "banned"
}
]
}
I need to get the value of the EconomyBan which in this case is "banned". Any help would be appreciated, been trying for hours now. I assume the -1 only works for numbers rather than letters?
Forgot to mention. EconomyBan is already filled in in the steam options plugin (see attachment), so the EconomyBan field should be called. You can ignore the rest of the text on the attachment provided below, the author already has created this steam_level check for me:
$url = sprintf("http://api.steampowered.com/IPlayerService/GetSteamLevel/v0001/?key=%s&steamid=%s",
$api_key,
$steam_id);
$curl_time = microtime(1);
// Needs curl to actually be able to pull data from steam api because of the special response-behaviour.
$ch = curl_init();
curl_setopt( $ch, CURLOPT_URL, $url );
@curl_setopt( $ch, CURLOPT_FOLLOWLOCATION, true );
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
curl_setopt( $ch, CURLOPT_AUTOREFERER, true );
curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, false );
curl_setopt( $ch, CURLOPT_MAXREDIRS, 5 );
curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT, $vbulletin->options['stc_curl_timeout'] ); #rc1: helps with page delay if steam is down
$steamlevel = curl_exec( $ch );
$http_response_header = curl_getinfo( $ch );
$curl_errno = curl_errno($ch);
$curl_error = curl_error($ch);
curl_close($ch);
$steamlevel = json_decode($steamlevel, 1);
with:
$steam_info['player_level'] = is_array($steamlevel) && isset($steamlevel['response'], $steamlevel['response']['player_level']) ? $steamlevel['response']['player_level'] : -1;
Which is working perfectly. I'm merely trying to duplicate the code, and grab the information from a different API instead.