dongzhou4727 2015-06-17 16:45
浏览 63

PHP - Steam API Web Connect OpenID - >无重定向

I have a problem with my code to login on steam, when I click on a button, the link block at: LINK?login --> No redirect to steam I don't now the problem and I start a PHP code, so can you help me please

<?php

error_reporting(E_ERROR | E_PARSE | E_WARNING);

$user = new user;
$user->apikey = ""; // put your API key here
$user->domain = ""; // 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'; // --> https://github.com/SmItH197/SteamAuthentication/blob/master/steamauth/openid.php<br>
        $openid = new LightOpenID($this->domain);// put your 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
                $_SESSION['steamID'] = $matches[1];
                header('Location: /');
                exit;
            }
            else
            {
                print ('fail');
            }
        }
    }
}

if(isset($_SESSION['etat']))
{

if(isset($_GET['login']))
{
    $user->signIn();
}

if (array_key_exists( 'logout', $_POST ))
{
    setcookie('steamID', '', -1, '/');
    header('Location: /');
}


if(strcmp($_SESSION['csteamid'], "0"))
{
    header('Location: index.php?section=403');
}
else
{
    echo '<a href="index.php?section=steamid&login"><img src="css/images/steamconnect.png"></a>';
}
}
else
{
    header('Location: index.php?section=403');
}
?>
  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 求差集那个函数有问题,有无佬可以解决
    • ¥15 【提问】基于Invest的水源涵养
    • ¥20 微信网友居然可以通过vx号找到我绑的手机号
    • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
    • ¥15 解riccati方程组
    • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
    • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
    • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
    • ¥50 树莓派安卓APK系统签名
    • ¥65 汇编语言除法溢出问题