Работа скрипта uLogin + php + mysql = ???

#1 21 октября 2014 в 17:24
Наткнулся на интересную вещь, теперь голова болит от того что не пойму где подвох.

Создал тестовую страницу для ulogin. Обычный пхп-скрипт (сразу предупрежу скрипт находится вне движка icms):

  1. $s = file_get_contents('http://ulogin.ru/token.php?token=' . $_POST['token'] . '&host=' . $_SERVER['HTTP_HOST']);
  2. $user = json_decode($s, true);
  3. $username = $user['nickname'];
  4. $password = md5($user['identity']);
  5. $email = $user['email'];
  6. $name = $user['first_name']." ".$user['last_name'];
  7. mysql_query("INSERT INTO users (username, password, email, name) VALUES ('$username','$password','$email','$name')");
  8. /*Далее создаем сессии и авторизуем пользователя с этими данными*/
  9. /* Так же кнопочку выхода для очистки сессий */
Как это работает? Скрипт принимает токен, получает данные пользователя, присваиваем переменные, записываем в базу.
Если несколько раз заходить через ulogin, то судя по структуре скрипта, каждый раз должна создаваться новая запись в БД.
А нет… создается только первый раз почему то, если таковой записи в базе нету.
Например если зайти через вконтакте, создается запись в БД. Выйти — зайти заново через вконтакте — запись не создается, а просто проходит авторизация. Потом выйти — зайти через фесбук — создастся запись в БД.

Где я чего пропустил? или недодумал? Обычно делал раньше проверку — если пользователь есть — запись создаем, нет — просто авторизуем. А тут безо всяких условий…
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.