Raised This Month: $ Target: $400
 0% 

[STEAM API] Simple php steam login in your site


  
 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
Author Message
Jankec90
Junior Member
Join Date: Jan 2013
Location: Wonderland
Old 01-25-2013 , 07:13   [STEAM API] Simple php steam login in your site
Reply With Quote #1

It can be used to store.
Players can easily use the data and can also be saved MYSQL database.
This is a very simple example, and can be easily modified.


Api key register: http://steamcommunity.com/dev/apikey
Download Openid: http://gitorious.org/lightopenid/lig...tarball/master

Download this API: https://www.dropbox.com/s/pflzg8wabv...teamWebAPI.rar

PHP Code:
<?php
error_reporting
(E_ERROR E_PARSE E_WARNING);

$user = new user;
$user->apikey "xxxxxxxxxxxxxxxxxxx"// put your API key here
$user->domain "localhost"// put your domain


class user
{
    public static 
$apikey;
    public static 
$domain;

    public function 
GetPlayerSummaries ($steamid)
    {
        
$response file_get_contents('http://api.steampowered.com/ISteamUser/GetPlayerSummaries/v0002/?key=' $this->apikey '&steamids=' $steamid);
        
$json json_decode($response);
        return 
$json->response->players[0];
    }

    public function 
signIn ()
    {
        require_once 
'openid.php';
        
$openid = new LightOpenID($this->domain);
        if(!
$openid->mode)
        {
            
$openid->identity 'http://steamcommunity.com/openid';
            
header('Location: ' $openid->authUrl());
        }
        elseif(
$openid->mode == 'cancel')
        {
            print (
'User has canceled authentication!');
        }
        else
        {
            if(
$openid->validate())
            {
                
preg_match("/^http:\/\/steamcommunity\.com\/openid\/id\/(7[0-9]{15,25}+)$/"$openid->identity$matches); // steamID: $matches[1]
                
setcookie('steamID'$matches[1], time()+(60*60*24*7), '/'); // 1 week
                
header('Location: /');
                exit;
            }
            else
            {
                print (
'fail');
            }
        }
    }
}

if(isset(
$_GET['login']))
{
    
$user->signIn();
}
if (
array_key_exists'logout'$_POST ))
{
    
setcookie('steamID''', -1'/');
    
header('Location: /');
}


if(!
$_COOKIE['steamID'])
{
    print (
'<form action="?login" method="post">
        <input type="image" src="http://cdn.steamcommunity.com/public/images/signinthroughsteam/sits_large_border.png"/>
        </form>'
);
}
else
{
    print(
'<form method="post"><button title="Logout" name="logout">Logout</button></form>');
    echo 
$user->GetPlayerSummaries($_COOKIE['steamID'])->personaname;
}
?>
__________________
sorry for the bad english

Last edited by Jankec90; 07-14-2013 at 18:11.
Jankec90 is offline
 



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 18:39.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode