Проблема с авто-логином - Форум Cheat-Master.ru
  • Страница 1 из 1
  • 1
Модератор форума: [CM]OlegEhtler, Getbackthere, Phoenixxx_Czar  
Проблема с авто-логином
kastet14185 Дата: Среда, 14.06.2017, 23:48 | Сообщение # 1
Новичок
Сообщений: 1
Статус: Offline
Здравствуйте форумчане, помогите решить проблему с авто-логином, вот код:

Код
function Welcome2(playerid)
{
  new string[200];
  new pip[20];
  new DBResult:result;
  //format(string, sizeof(string), "SELECT Login FROM Accounts WHERE Login = '%s'", PlayerInfo[playerid][pName]);
  format(string, sizeof(string), "SELECT Login FROM Accounts WHERE Login = '%s' LIMIT 1", PlayerInfo[playerid][pName]);
  result = db_query(dbHandle, string);
  if(db_num_rows(result) != 0)
  {
          db_free_result(result);
          GetPlayerIp(playerid, pip, 20);
          format(string, sizeof(string), "SELECT * FROM Accounts WHERE Login = '%s' AND IP = '%s'", PlayerInfo[playerid][pName],  pip);
          if(db_num_rows(result) != 0)
          {
                         LoginPlayer(playerid);    
          }
          if(!db_num_rows(result))
          {
                  db_get_field_assoc(result, "Password", str, MAX_PLAYER_PASSWORD), SetPVarString(playerid, "Password", str);
                  ShowDialog(playerid, DIALOG_LOGIN);
          }
     }
    else
    {
         ShowDialog(playerid, DIALOG_REGISTER);
    }
    db_free_result(result);
    return true;
}


Проблема заключается в том, что вот такой вот код и при заходе на сервер, если новый ник то его регистрирует как положено без проблем, при повторном подключении проиходит автологин, но я пробовал менять айпи своего интернета, в итоге происходит снова автологин на новом IP, собственно это и есть проблема, и ещё при регистрации в базу данных в поле Password не вносится пароль, который использовался при регистрации и поле Password пустое, либо я криво перевёл с MySQL на SQLite, либо я просто не понимаю в чем проблема. Помогите.


Сообщение отредактировал kastet14185 - Четверг, 15.06.2017, 00:07
=) Дата: Воскресенье, 02.07.2017, 20:47 | Сообщение # 2
Боец
Сообщений: 271
Статус: Offline
Ты просто проверяешь, пришел ответ от бд или нет. Ответ разумеется приходит, вот он и авторизует. Это будет даже если под чужим ником зайдешь - он авторизует. Нужно после проверки получения данных делать проверку на сами данные. То есть одинаковый ли айпи игрока сейчас с тем, который записан в аккаунте.
  • Страница 1 из 1
  • 1
Поиск:
Статистика Форума