Цитата:
Логика:
Пользователь входит через steam, я получаю его steam_id, мне надо найти этот steam_id в уже зарегистрированных пользователях и есть есть, то авторизировать, если нет, то создать пользователя.
Пользователь входит через steam, я получаю его steam_id, мне надо найти этот steam_id в уже зарегистрированных пользователях и есть есть, то авторизировать, если нет, то создать пользователя.
PHP:
скопировать код в буфер обмена
скопировать код в буфер обмена
- public function SteamAuth() {
- try {
- require ('openid.php');
- $openid = new LightOpenID('shop');
- if (!$user_id) {
- if (!$openid->mode) {
- $openid->identity = 'http://steamcommunity.com/openid';
- }
- echo "<form action=\"?login\" method=\"post\"> <input type=\"image\" src=\"http://cdn.steamcommunity.com/public/images/signinthroughsteam/sits_small.png\"></form>";
- }
- elseif ($openid->mode == 'cancel') {
- echo Core::msg_show(__('SteamСanceledAuthentication'));
- }
- else {
- if ($openid->validate()) {
- $id = $openid->identity;
- $ptn = "/^http:\/\/steamcommunity\.com\/openid\/id\/(7[0-9]{15,25}+)$/";
- $_SESSION['steamid'] = $matches[1];
- if ($valid->check($rules) == TRUE) {
- //тут пользователь есть, надо найти его id и авторизировать
- }
- else {
- }
- }
- else {
- echo Core::msg_show(__('SteamBadCheck'));
- }
- }
- }
- } catch (ErrorException $e) {
- echo $e->getMessage();
- }
- }