Интеграция с bbPress RTX - PullRequest
       22

Интеграция с bbPress RTX

1 голос
/ 22 декабря 2010

В настоящее время я работаю над интеграцией RTX / Janrain с bbPress, но я застрял с SQL-запросом, который не дает мне никаких результатов, хотя я пробовал с подстановочными знаками и адрес электронной почты, который я знаю, зарегистрирован.

Войти в систему

$ rpxApiKey = 'xxxxx';

if (isset ($ _ POST ['token'])) {/ * ШАГ 1: Извлечь параметр POST токена * / $ token = $ _POST ['token'];

/ * ШАГ 2: Используйте токен, чтобы сделать вызов API auth_info * / $ post_data = массив ('token' => $ _POST ['token'], 'apiKey' => $ rpxApiKey, 'format' => 'json');

$ curl = curl_init (); curl_setopt ($ локон, CURLOPT_RETURNTRANSFER, правда); curl_setopt ($ curl, CURLOPT_URL, «https://rpxnow.com/api/v2/auth_info'); curl_setopt ($ curl, CURLOPT_POST, true);
curl_setopt ($ curl, CURLOPT_POSTFIELDS, $ post_data); curl_setopt ($ curl, CURLOPT_HEADER, ложный); curl_setopt ($ локон, CURLOPT_SSL_VERIFYPEER, false); $ raw_json = curl_exec ($ curl); curl_close ($ завиток);

/ * ШАГ 3: Анализ JSON auth_info ответ * / $ auth_info = json_decode ($ raw_json, true);

if ($ auth_info ['stat'] == 'ok') { / * ШАГ 3 Продолжение: извлечь «идентификатор» из ответа * / $ profile = $ auth_info ['profile']; $ identifier = $ profile ['identifier'];
$ Профиль [ 'идентификатор']; if (isset ($ profile ['photo'])) { $ photo_url = $ profile ['photo']; }

if (isset($profile['displayName']))  {
  $name = $profile['displayName'];
}

if (isset ($ profile ['email'])) { $ email = $ profile ['email']; } / * Шаг 5. Проверьте, существует ли пользователь в базе данных, если это так, войдите, если не создавать нового пользователя, то войти * / глобальный $ bbdb; $ querystr = " SELECT * FROM $ bbdb-> bb_users
ГДЕ user_email = $ email LIMIT 1 "; $ rtx_user_id = $ bbdb-> get_results ($ querystr, OBJECT); print_r ($ rtx_user_id); if ($ rtx_user_id) { эхо "Большой успех"; wp_set_auth_cookie ((int) $ rtx_user_id, 0); // 0 = не помните, короткий логин, todo: используйте форму значение do_action ('bb_user_login', (int) $ rtx_user_id); } если (! $ rtx_user_id) {echo "Не отлично успех ";}

/* STEP 6: Use the identifier as the unique key to sign the user into

ваша система. Это будет зависеть от реализации вашего сайта, и вы должны добавь свой код здесь. * /

/ * произошла ошибка * /}

else {// изящно обрабатывать ошибка. Зацепи это в свой родной система обработки ошибок. эхо произошла ошибка: ' . $ Auth_info [ 'ERR'] [ 'сбщ']; }}}?>

Проблема возникает в Шаге 5, который должен проверить, существует ли пользователь.

Заранее спасибо, Куница

1 Ответ

2 голосов
/ 23 декабря 2010

Как мы говорили в твиттере, строка запроса должна быть

$querystr = "SELECT * FROM $bbdb->users WHERE user_email = '$email' LIMIT 1";
...