Ребята такая проблема я всё правильно сделал всё подключил и так: Создаю аккаунт всё нормально в базе он появляется тут же релогаюсь собейтом а именно /nick Ololoev_Ololoy и пишу пароль точно такой же как на 1 аккаунте и в бд получается раздвоение
http://hkar.ru/EPa5 скрин
как решить это?
С паролями вообще беда если зарегать Аккаунт 1 с паролем 123321 и сделать релог и зарегать аккаунт 2 с паролем 123321 то пароль будет 123321123321 а потом опять и так далее жесть
Обнулить надо данные игрока при входе/выходе с сервера.
А при сохранение не помешало бы добавить проверку на то, что игрок авторизован был на сервере. А то, если он зайдет и НЕ авторизуется (то есть данные не будут загружены) приведет к обнулению информации в базе данных. Мы что, нули здесь будем сохранять? :)PHP код:
stock ClearPlayerInformation(playerid)
{
strdel(pInfo[playerid][pPassword], 0, 30);
pInfo[playerid][pID] = 0;
player_is_authorized{playerid} = 0;
}
PHP код:
stock SaveAccount(playerid)
{
if(player_is_authorized{playerid} == 0) return 1;
new query_string[(21)+(20+MAX_PLAYER_NAME)+(19+MAX_PLAYER_NAME)+(16+30)] = "UPDATE `accounts` SET";
format(query_string, sizeof(query_string), "%s `player_name` = '%s',", query_string, pInfo[playerid][pName]); // мне кажется, или эта строка лишняя?
format(query_string, sizeof(query_string), "%s `password` = '%s'", query_string, pInfo[playerid][pPassword]);
format(query_string, sizeof(query_string), "%s WHERE `player_name` = '%s'", query_string, pInfo[playerid][pName]);
mysql_function_query(mysql_connect_ID, query_string, false, "", "");
return 1;
}
Эту тему просматривают: 2 (пользователей: 0 , гостей: 2)