PDA

Просмотр полной версии : [Вопрос] Авторизация администратора.



kala4iks
25.11.2016, 12:08
Добрый день, столкнулся с такой проблемой, сделал админ авторизацию все работает но есть одно но. Игрок должен вводить свой пароль и только тогда его должно пускать но игрок вводит любое число или любой пароль и его пускает в чем может быть проблема? раньше такого не было.


CMD:aduty(playerid,params[])
{
new string[124];
if(Player[playerid][pAdmin] == 0)return NoRights;
if(Player[playerid][pADostup] == false)return SPD(playerid,DIALOG_ADOSTUP,DIALOG_STYLE_INPUT,"{33CCFF}Администраторские права","{FFE4B5}У тебя еще не указан пароль к администраторским правам.\nПридумай и введи пароль отличающийся от основного пароля и нажми ''ОК''.","ОК","Закрыть");
if(AdminDuty[playerid] == false)
{
SPD(playerid,DIALOG_ADUTY,DIALOG_STYLE_PASSWORD,"{33CCFF}Администраторские права","{FFE4B5}Введи свой пароль для получения администраторских прав.","ОК","Закрыть");
}
else
{
switch(GetPVarInt(playerid,"Sex"))
{
case 1: f(string,"%s %s[%d] завершил дежурство.",NameAdmin[Player[playerid][pAdmin]-1],sendername(playerid),playerid);
case 2: f(string,"%s %s[%d] завершила дежурство.",NameAdmin[Player[playerid][pAdmin]-1],sendername(playerid),playerid);
}
ABroadCast(COLOR_YELLOW,string,1);
AdutyPas[playerid] = 0;
AdminDuty[playerid] = false;
}
return true;
}


case DIALOG_ADOSTUP:
{
if(!response)return 1;
if(!strlen(inputtext))return SPD(playerid,DIALOG_ADOSTUP,DIALOG_STYLE_INPUT,"{33CCFF}Администраторские права","{FFE4B5}У тебя еще не указан пароль к администраторским правам.\nПридумай и введи пароль отличающийся от основного пароля и нажми ''ОК''.","ОК","Закрыть");
if(strlen(inputtext) < 6 || strlen(inputtext) > 32)
{
send(playerid,0xFF0000AA,"[ОШИБКА] {FFFFFF}Длина пароля должна быть в пределах от 6 и до 32 символов.");
ShowPlayerDialog(playerid,DIALOG_ADOSTUP,DIALOG_STYLE_INPUT,"{33CCFF}Администраторские права","{FFE4B5}У тебя еще не указан пароль к администраторским правам.\nПридумай и введи пароль отличающийся от основного пароля и нажми ''ОК''.","ОК","Закрыть");
}
else
{
strmid(Player[playerid][pApass],inputtext,0,32,255);
f(string,"Твой администраторский пароль: %s. Не забывай его, а лучше запиши.",inputtext);
send(playerid,COLOR_GREEN,string);
switch(GetPVarInt(playerid,"Sex"))
{
case 1: f(string,"%s %s[%d] заступил на дежурство.",NameAdmin[Player[playerid][pAdmin]-1],sendername(playerid),playerid);
case 2: f(string,"%s %s[%d] заступила на дежурство.",NameAdmin[Player[playerid][pAdmin]-1],sendername(playerid),playerid);
}
ABroadCast(COLOR_YELLOW,string,1);
send(playerid,COLOR_YELLOW,string);
AdminDuty[playerid] = true;
Player[playerid][pADostup] = true;
}
}



case DIALOG_ADUTY:
{
if(response)
{
if(!strlen(inputtext))return ShowPlayerDialog(playerid,DIALOG_ADUTY,DIALOG_STYLE_PASSWORD,"{33CCFF}Администраторские права","{FFE4B5}Введи свой пароль для получения администраторских прав.","ОК","Закрыть");
if(!strcmp(inputtext,Player[playerid][pApass],true))
{
switch(GetPVarInt(playerid,"Sex"))
{
case 1: f(string,"%s %s[%d] заступил на дежурство.",NameAdmin[Player[playerid][pAdmin]-1],sendername(playerid),playerid);
case 2: f(string,"%s %s[%d] заступила на дежурство.",NameAdmin[Player[playerid][pAdmin]-1],sendername(playerid),playerid);
}
ABroadCast(COLOR_YELLOW,string,1);
send(playerid,COLOR_YELLOW,string);
AdminDuty[playerid] = true;
}
else
{
AdutyPas[playerid]++;
f(string,"[ОШИБКА] {FFFFFF}Неверный пароль от ''/aduty''. Осталось попыток {FF0000}%d{FFFFFF}.",3-AdutyPas[playerid]);
send(playerid,0xFF0000AA,string);
if(AdutyPas[playerid] >= 3)
{
f(string,"Античит: %s[%d] был(а) кикнут(а). Причина: Подбор пароля к ''/aduty''.",Player[playerid][pName],playerid);
ABroadCast(COLOR_YELLOW,string,1);
send(playerid,COLOR_YELLOW,"Ты был(а) кикнут(а) античитом. Причина: Подбор пароля к ''/aduty''.");
Kick(playerid);
}
}
return 1;
}
}

DeimoS
25.11.2016, 12:36
Покажи как ты выгружаешь пароль из базы данных.
pApass, скорее всего, просто пуста (данные не загружены)

qwezert
25.11.2016, 12:44
На будущее - учитесь дебагать все и вся. Дебаг - ваш лучший друг на пути к созданию любой системы

kala4iks
25.11.2016, 13:04
Покажи как ты выгружаешь пароль из базы данных.
pApass, скорее всего, просто пуста (данные не загружены)


publics LoadAccount(playerid,password[])
{
new rows, fields,string[144];
cache_get_data(rows, fields);
if(rows)
{
Player[playerid][pID] = cache_get_field_content_int(0, "ID", mySQLDB);
cache_get_field_content(0, "Nickname", Player[playerid][pName]);
cache_get_field_content(0, "Password", Player[playerid][pKey]);
SetPVarInt(playerid, "pLevel",cache_get_field_content_int(0, "Level", mySQLDB));
Player[playerid][pAdmin] = cache_get_field_content_int(0, "Admin", mySQLDB);
SetPVarInt(playerid,"Reg",cache_get_field_content_int(0, "Reg", mySQLDB));
SetPVarInt(playerid,"Sex",cache_get_field_content_int(0, "Sex", mySQLDB));
SetPVarInt(playerid,"pSpawn",cache_get_field_content_int(0, "Spawn", mySQLDB));
SetPVarInt(playerid, "pExp",cache_get_field_content_int(0, "Exp", mySQLDB));
Player[playerid][pBankPass] = cache_get_field_content_int(0, "BankPass", mySQLDB);
SetPVarInt(playerid,"pMoney",cache_get_field_content_int(0, "Money", mySQLDB));
Player[playerid][pBank] = cache_get_field_content_int(0, "Bank", mySQLDB);
Player[playerid][pMuteTime] = cache_get_field_content_int(0, "MuteTime", mySQLDB);
Player[playerid][pJob] = cache_get_field_content_int(0, "Job", mySQLDB);
Player[playerid][pPayCheck] = cache_get_field_content_int(0, "PayCheck", mySQLDB);
Player[playerid][pJailed] = bool:cache_get_field_content_int(0, "Jailed", mySQLDB);
Player[playerid][pJailTime] = cache_get_field_content_int(0, "JailTime", mySQLDB);
Player[playerid][pMedicTime] = cache_get_field_content_int(0, "MedicTime", mySQLDB);
Player[playerid][pMats] = cache_get_field_content_int(0, "Mats", mySQLDB);
Player[playerid][pDrugs] = cache_get_field_content_int(0, "Drugs", mySQLDB);
Player[playerid][pJobTime] = cache_get_field_content_int(0, "JobTime", mySQLDB);
Player[playerid][pMember] = cache_get_field_content_int(0, "Member", mySQLDB);
Player[playerid][pLeader] = cache_get_field_content_int(0, "Leader", mySQLDB);
Player[playerid][pZam] = cache_get_field_content_int(0, "Zam", mySQLDB);
Player[playerid][pRank] = cache_get_field_content_int(0, "Rank", mySQLDB);
Player[playerid][pModel] = cache_get_field_content_int(0, "Model", mySQLDB);
Player[playerid][pChar] = cache_get_field_content_int(0, "Char", mySQLDB);
Player[playerid][pPbiskey] = cache_get_field_content_int(0, "Pbiskey", mySQLDB);
Player[playerid][pTWarns] = cache_get_field_content_int(0, "TWarns", mySQLDB);
Player[playerid][pCarLic] = bool:cache_get_field_content_int(0, "CarLic", mySQLDB);
Player[playerid][pMotoLic] = bool:cache_get_field_content_int(0, "MotoLic", mySQLDB);
Player[playerid][pTruckLic] = bool:cache_get_field_content_int(0, "TruckLic", mySQLDB);
Player[playerid][pTruckELic] = bool:cache_get_field_content_int(0, "TruckELic", mySQLDB);
Player[playerid][pFlyLic] = bool:cache_get_field_content_int(0, "FlyLic", mySQLDB);
Player[playerid][pBoatLic] = bool:cache_get_field_content_int(0, "BoatLic", mySQLDB);
Player[playerid][pSD] = bool:cache_get_field_content_int(0, "SD", mySQLDB);
Player[playerid][pGunLic] = bool:cache_get_field_content_int(0, "GunLic", mySQLDB);
Player[playerid][pTaxiLic] = bool:cache_get_field_content_int(0, "TaxiLic", mySQLDB);
Player[playerid][pGruzSkill] = cache_get_field_content_int(0, "GruzSkill", mySQLDB);
Player[playerid][pDrugSkill] = cache_get_field_content_int(0, "DrugSkill", mySQLDB);
Player[playerid][pGunSkill] = cache_get_field_content_int(0, "GunSkill", mySQLDB);
Player[playerid][pCarSkill] = cache_get_field_content_int(0, "CarSkill", mySQLDB);
Player[playerid][pJackSkill] = cache_get_field_content_int(0, "JackSkill", mySQLDB);
Player[playerid][pRobSkill] = cache_get_field_content_int(0, "RobSkill", mySQLDB);
Player[playerid][pRobHouseSkill] = cache_get_field_content_int(0, "RobHouseSkill", mySQLDB);
Player[playerid][pTimePizdanul] = cache_get_field_content_int(0, "TimePizdanul", mySQLDB);
Player[playerid][pRobHouseTime] = cache_get_field_content_int(0, "RobHouseTime", mySQLDB);
Player[playerid][pMechSkill] = cache_get_field_content_int(0, "MechSkill", mySQLDB);
Player[playerid][pTruckSkill] = cache_get_field_content_int(0, "TruckSkill", mySQLDB);
Player[playerid][pDetSkill] = cache_get_field_content_int(0, "DetSkill", mySQLDB);
Player[playerid][pHeadValue] = cache_get_field_content_int(0, "HeadValue", mySQLDB);
Player[playerid][pHunterValue] = cache_get_field_content_int(0, "HunterValue", mySQLDB);
Player[playerid][pTruckETime] = cache_get_field_content_int(0, "TruckETime", mySQLDB);
Player[playerid][pPayDay] = cache_get_field_content_int(0, "PayDay", mySQLDB);
Player[playerid][pWarns] = cache_get_field_content_int(0, "Warns", mySQLDB);
Player[playerid][pBoxing] = bool:cache_get_field_content_int(0, "Boxing", mySQLDB);
Player[playerid][pKunfu] = bool:cache_get_field_content_int(0, "Kunfu", mySQLDB);
Player[playerid][pKneehead] = bool:cache_get_field_content_int(0, "Kneehead", mySQLDB);
Player[playerid][pGrabkick] = bool:cache_get_field_content_int(0, "Grabkick", mySQLDB);
Player[playerid][pFStyle] = cache_get_field_content_int(0, "FStyle", mySQLDB);
Player[playerid][pRope] = bool:cache_get_field_content_int(0, "Rope", mySQLDB);
Player[playerid][pCheatPassword] = bool:cache_get_field_content_int(0, "CheatPassword", mySQLDB);
Player[playerid][pGPS] = bool:cache_get_field_content_int(0, "GPS", mySQLDB);
Player[playerid][pSigs] = cache_get_field_content_int(0, "Sigs", mySQLDB);
Player[playerid][pPivo] = cache_get_field_content_int(0, "Pivo", mySQLDB);
Player[playerid][pWanted] = cache_get_field_content_int(0, "Wanted", mySQLDB);
Player[playerid][pRobTime] = cache_get_field_content_int(0, "RobTime", mySQLDB);
Player[playerid][pJackTime] = cache_get_field_content_int(0, "JackTime", mySQLDB);
Player[playerid][pAdminOnline] = cache_get_field_content_int(0, "AdminOnline", mySQLDB);
SetPVarInt(playerid,"pVip",cache_get_field_content_int(0, "Vip", mySQLDB));
Player[playerid][pDonate] = cache_get_field_content_int(0, "Donate", mySQLDB);
Player[playerid][pKvest_1] = bool:cache_get_field_content_int(0, "Kvest_1", mySQLDB);
Player[playerid][pKvest_2] = bool:cache_get_field_content_int(0, "Kvest_2", mySQLDB);
Player[playerid][pKvest_3] = bool:cache_get_field_content_int(0, "Kvest_3", mySQLDB);
Player[playerid][pKvest_4] = bool:cache_get_field_content_int(0, "Kvest_4", mySQLDB);
Player[playerid][pKvest_5] = bool:cache_get_field_content_int(0, "Kvest_5", mySQLDB);
Player[playerid][pKvest_6] = bool:cache_get_field_content_int(0, "Kvest_6", mySQLDB);
Player[playerid][pKvest_7] = bool:cache_get_field_content_int(0, "Kvest_7", mySQLDB);
Player[playerid][pKvest_8] = bool:cache_get_field_content_int(0, "Kvest_8", mySQLDB);
Player[playerid][pKvest_9] = bool:cache_get_field_content_int(0, "Kvest_9", mySQLDB);
Player[playerid][pKvest_10] = bool:cache_get_field_content_int(0, "Kvest_10", mySQLDB);
Player[playerid][pKvest_11] = bool:cache_get_field_content_int(0, "Kvest_11", mySQLDB);
Player[playerid][pKvest_12] = bool:cache_get_field_content_int(0, "Kvest_12", mySQLDB);
cache_get_field_content(0, "Repost", Player[playerid][pRepost]);
Player[playerid][pAdminLeader] = bool:cache_get_field_content_int(0, "AdmLeader", mySQLDB);
Player[playerid][pAdminBan] = bool:cache_get_field_content_int(0, "AdmBan", mySQLDB);
Player[playerid][pAdminSkripter] = bool:cache_get_field_content_int(0, "AdmSkript", mySQLDB);
Player[playerid][pJailBlock] = bool:cache_get_field_content_int(0, "JailPrice", mySQLDB);
Player[playerid][pFMuteTime] = cache_get_field_content_int(0, "Fmute", mySQLDB);
Player[playerid][pFrisk] = cache_get_field_content_int(0, "Frisk", mySQLDB);
cache_get_field_content(0, "Apass", Player[playerid][pApass]); // Загрузка пароля админа.
Player[playerid][pADostup] = bool:cache_get_field_content_int(0, "ADostup", mySQLDB);
SetPVarInt(playerid,"JoKvestStep",cache_get_field_content_int(0, "JoStep", mySQLDB));
SetPVarInt(playerid, "pLogged",1);
Logged[playerid] = true;
DisablePlayerCheckpoint(playerid);
new ip[MAX_PLAYER_NAME];
GetPlayerIp(playerid,ip,sizeof(ip));
ConnectIP[playerid] = ip;
if (Player[playerid][pAdmin] == 0)
{
f(string, "Подключение: %s[%d] || IP: {FFFFFF}%s", sendername(playerid),playerid,ip);
ABroadCast(COLOR_GREY,string,1);
}
if (Player[playerid][pAdmin] != 0)
{
f(string, "Подключение: %s[%d] || IP: {00D900}%s", sendername(playerid),playerid,ip);
ABroadCast(COLOR_GREY,string,1);
}
for(new i=1; i <= HOME; i++)
{
if(!strcmp(HouseInfo[i][hOwner],sendername(playerid),true) && HouseInfo[i][hOwned] == 1)
{
Player[playerid][pPhousekey] = i;
break;
}
}
/*mysql_format(mySQLDB,string, sizeof(string), "SELECT ID FROM house WHERE Owner = '%s'", sendername(playerid));
mysql_function_query(mySQLDB, string, true, "CallbackGiveHouse", "d", playerid);*/
SetPlayerScore(playerid, GetPVarInt(playerid, "pLevel"));
SetPlayerWantedLevel(playerid,Player[playerid][pWanted]);
TextDrawShowForPlayer(playerid,ServerTime);
TextDrawShowForPlayer(playerid,ServerDate);
TextDrawShowForPlayer(playerid,ServerLogo);
SetPlayerColor(playerid,0xFFFFFF80);
TeleportTime[playerid] = 10;
DisablePlayerCheckpoint(playerid);
PMOnline[playerid] = false;
SpawnPlayer(playerid),OnPlayerReSpawn(playerid);
if(Player[playerid][pAdmin] != 0)send(playerid,0xFFFF00AA,"Для получения администраторских прав, используйте команду ''/aduty''.");
//Проверка на личный кар.
//new CarCheckString[128];
//mysql_format(mySQLDB,CarCheckString, sizeof(CarCheckString), "SELECT * FROM "TABLE_VEHICLE_PLAYER" WHERE `Owner` = '%s'", sendername(playerid));
//mysql_function_query(mySQLDB, string, true, "LoadPlayerAuto", "d", playerid);
//send(playerid,COLOR_ANTICHEAT,"[UniteD: Guard] {ffffff}Идёт поиск личных авто привязанных к вашему аккаунту...");
return true;
}
else
{
ErrorPas[playerid]++;
f(string,"[ОШИБКА] {FFFFFF}Неверный пароль. Осталось попыток: {FF0000}%d{FFFFFF}.",3-ErrorPas[playerid]);
send(playerid,0xFF0000AA,string);
if(ErrorPas[playerid] >= 3)
{
switch(GetPVarInt(playerid,"Sex"))
{
case 1:f(string,"Античит: %s[%d] был кикнут. Причина: Подбор пароля.",Player[playerid][pName],playerid);
case 2:f(string,"Античит: %s[%d] была кикнута. Причина: Подбор пароля.",Player[playerid][pName],playerid);
}
ABroadCast(0xFFFF00AA,string,1);
send(playerid,0xFFFF00AA,"Вы были кикнуты античитом. Причина: Подбор пароля.");
SetTimerEx("KickFix",1000,0,"i",playerid);
return true;
}
ShowLogin(playerid);
}
return false;
}

DeimoS
25.11.2016, 15:58
структуру БД покажи + удостоверься, что в БД пароль записан

kala4iks
25.11.2016, 22:35
структуру БД покажи + удостоверься, что в БД пароль записан

С сахронением что-то не понятное оно вроде сохроняется но стоит зайти выйти еще раз зайти и выйти бывает просто напросто слетает.

http://rgho.st/6ljSRVHwZ/thumb.png (http://rgho.st/6ljSRVHwZ.view)

DeimoS
25.11.2016, 23:16
Показывай как сохраняешь

kala4iks
25.11.2016, 23:38
Показывай как сохраняешь

enum pInfo


pApass[MAX_PLAYER_NAME]


case DIALOG_ADOSTUP:
{
if(!response)return 1;
if(!strlen(inputtext))return SPD(playerid,DIALOG_ADOSTUP,DIALOG_STYLE_INPUT,"{33CCFF}Администраторские права","{FFE4B5}У тебя еще не указан пароль к администраторским правам.\nПридумай и введи пароль отличающийся от основного пароля и нажми ''ОК''.","ОК","Закрыть");
if(strlen(inputtext) < 6 || strlen(inputtext) > 32)
{
send(playerid,0xFF0000AA,"[ОШИБКА] {FFFFFF}Длина пароля должна быть в пределах от 6 и до 32 символов.");
ShowPlayerDialog(playerid,DIALOG_ADOSTUP,DIALOG_STYLE_INPUT,"{33CCFF}Администраторские права","{FFE4B5}У тебя еще не указан пароль к администраторским правам.\nПридумай и введи пароль отличающийся от основного пароля и нажми ''ОК''.","ОК","Закрыть");
}
else
{
strmid(Player[playerid][pApass],inputtext,0,strlen(inputtext),255);
f(string,"Твой администраторский пароль: %s. Не забывай его, а лучше запиши.",inputtext);
send(playerid,COLOR_GREEN,string);
switch(GetPVarInt(playerid,"Sex"))
{
case 1: f(string,"%s %s[%d] заступил на дежурство.",NameAdmin[Player[playerid][pAdmin]-1],sendername(playerid),playerid);
case 2: f(string,"%s %s[%d] заступила на дежурство.",NameAdmin[Player[playerid][pAdmin]-1],sendername(playerid),playerid);
}
ABroadCast(COLOR_YELLOW,string,1);
send(playerid,COLOR_YELLOW,string);
AdminDuty[playerid] = true;
Player[playerid][pADostup] = true;
SaveAccount(playerid);
}
}


stock SaveAccount(playerid)
{
if(GetPVarInt(playerid, "pLogged") == 1)
{
//CheckMySQLConnection();
new str[2028];
mysql_format(mySQLDB,str,sizeof(str),"UPDATE "TABLE_ACCOUNT" SET ");
mysql_format(mySQLDB,str,sizeof(str),"%s`Level`= '%i', ",str,GetPVarInt(playerid,"pLevel"));
mysql_format(mySQLDB,str,sizeof(str),"%s`Admin`= '%i', ",str,Player[playerid][pAdmin]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Reg`= '%i', ",str,GetPVarInt(playerid,"Reg"));
mysql_format(mySQLDB,str,sizeof(str),"%s`Sex`= '%i', ",str,GetPVarInt(playerid,"Sex"));
mysql_format(mySQLDB,str,sizeof(str),"%s`Spawn`= '%i', ",str,GetPVarInt(playerid, "pSpawn"));
mysql_format(mySQLDB,str,sizeof(str),"%s`Exp`= '%i', ",str,GetPVarInt(playerid,"pExp"));
mysql_format(mySQLDB,str,sizeof(str),"%s`BankPass`= '%i', ",str,Player[playerid][pBankPass]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Money`= '%i', ",str,GetPVarInt(playerid,"pMoney"));
mysql_format(mySQLDB,str,sizeof(str),"%s`Bank`= '%i', ",str,Player[playerid][pBank]);
mysql_format(mySQLDB,str,sizeof(str),"%s`MuteTime`= '%i', ",str,Player[playerid][pMuteTime]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Job`= '%i', ",str,Player[playerid][pJob]);
mysql_format(mySQLDB,str,sizeof(str),"%s`PayCheck`= '%i', ",str,Player[playerid][pPayCheck]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Jailed`= '%i', ",str,Player[playerid][pJailed]);
mysql_format(mySQLDB,str,sizeof(str),"%s`JailTime`= '%i', ",str,Player[playerid][pJailTime]);
mysql_format(mySQLDB,str,sizeof(str),"%s`MedicTime`= '%i', ",str,Player[playerid][pMedicTime]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Mats`= '%i', ",str,Player[playerid][pMats]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Drugs`= '%i', ",str,Player[playerid][pDrugs]);
mysql_format(mySQLDB,str,sizeof(str),"%s`JobTime`= '%i', ",str,Player[playerid][pJobTime]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Member`= '%i', ",str,Player[playerid][pMember]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Leader`= '%i', ",str,Player[playerid][pLeader]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Zam`= '%i', ",str,Player[playerid][pZam]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Rank`= '%i', ",str,Player[playerid][pRank]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Model`= '%i', ",str,Player[playerid][pModel]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Char`= '%i', ",str,Player[playerid][pChar]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Pbiskey`= '%i', ",str,Player[playerid][pPbiskey]);
mysql_format(mySQLDB,str,sizeof(str),"%s`TWarns`= '%i', ",str,Player[playerid][pTWarns]);
mysql_format(mySQLDB,str,sizeof(str),"%s`CarLic`= '%i', ",str,Player[playerid][pCarLic]);
mysql_format(mySQLDB,str,sizeof(str),"%s`MotoLic`= '%i', ",str,Player[playerid][pMotoLic]);
mysql_format(mySQLDB,str,sizeof(str),"%s`TruckLic`= '%i', ",str,Player[playerid][pTruckLic]);
mysql_format(mySQLDB,str,sizeof(str),"%s`TruckELic`= '%i', ",str,Player[playerid][pTruckELic]);
mysql_format(mySQLDB,str,sizeof(str),"%s`FlyLic`= '%i', ",str,Player[playerid][pFlyLic]);
mysql_format(mySQLDB,str,sizeof(str),"%s`BoatLic`= '%i', ",str,Player[playerid][pBoatLic]);
mysql_format(mySQLDB,str,sizeof(str),"%s`SD`= '%i', ",str,Player[playerid][pSD]);
mysql_format(mySQLDB,str,sizeof(str),"%s`GunLic`= '%i', ",str,Player[playerid][pGunLic]);
mysql_format(mySQLDB,str,sizeof(str),"%s`TaxiLic`= '%i', ",str,Player[playerid][pTaxiLic]);
mysql_format(mySQLDB,str,sizeof(str),"%s`GruzSkill`= '%i', ",str,Player[playerid][pGruzSkill]);
mysql_format(mySQLDB,str,sizeof(str),"%s`DrugSkill`= '%i', ",str,Player[playerid][pDrugSkill]);
mysql_format(mySQLDB,str,sizeof(str),"%s`GunSkill`= '%i', ",str,Player[playerid][pGunSkill]);
mysql_format(mySQLDB,str,sizeof(str),"%s`CarSkill`= '%i', ",str,Player[playerid][pCarSkill]);
mysql_format(mySQLDB,str,sizeof(str),"%s`JackSkill`= '%i', ",str,Player[playerid][pJackSkill]);
mysql_format(mySQLDB,str,sizeof(str),"%s`RobSkill`= '%i', ",str,Player[playerid][pRobSkill]);
mysql_format(mySQLDB,str,sizeof(str),"%s`RobHouseSkill`= '%i', ",str,Player[playerid][pRobHouseSkill]);
mysql_format(mySQLDB,str,sizeof(str),"%s`TimePizdanul`= '%i', ",str,Player[playerid][pTimePizdanul]);
mysql_format(mySQLDB,str,sizeof(str),"%s`RobHouseTime`= '%i', ",str,Player[playerid][pRobHouseTime]);
mysql_format(mySQLDB,str,sizeof(str),"%s`MechSkill`= '%i', ",str,Player[playerid][pMechSkill]);
mysql_format(mySQLDB,str,sizeof(str),"%s`TruckSkill`= '%i', ",str,Player[playerid][pTruckSkill]);
mysql_format(mySQLDB,str,sizeof(str),"%s`DetSkill`= '%i', ",str,Player[playerid][pDetSkill]);
mysql_format(mySQLDB,str,sizeof(str),"%s`HeadValue`= '%i', ",str,Player[playerid][pHeadValue]);
mysql_format(mySQLDB,str,sizeof(str),"%s`HunterValue`= '%i', ",str,Player[playerid][pHunterValue]);
mysql_format(mySQLDB,str,sizeof(str),"%s`TruckETime`= '%i', ",str,Player[playerid][pTruckETime]);
mysql_format(mySQLDB,str,sizeof(str),"%s`PayDay`= '%i', ",str,Player[playerid][pPayDay]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Warns`= '%i', ",str,Player[playerid][pWarns]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Boxing`= '%i', ",str,Player[playerid][pBoxing]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Kunfu`= '%i', ",str,Player[playerid][pKunfu]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Kneehead`= '%i', ",str,Player[playerid][pKneehead]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Grabkick`= '%i', ",str,Player[playerid][pGrabkick]);
mysql_format(mySQLDB,str,sizeof(str),"%s`FStyle`= '%i', ",str,Player[playerid][pFStyle]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Rope`= '%i', ",str,Player[playerid][pRope]);
mysql_format(mySQLDB,str,sizeof(str),"%s`CheatPassword`= '%i', ",str,Player[playerid][pCheatPassword]);
mysql_format(mySQLDB,str,sizeof(str),"%s`GPS`= '%i', ",str,Player[playerid][pGPS]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Sigs`= '%i', ",str,Player[playerid][pSigs]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Pivo`= '%i', ",str,Player[playerid][pPivo]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Wanted`= '%i', ",str,Player[playerid][pWanted]);
mysql_format(mySQLDB,str,sizeof(str),"%s`RobTime`= '%i', ",str,Player[playerid][pRobTime]);
mysql_format(mySQLDB,str,sizeof(str),"%s`JackTime`= '%i', ",str,Player[playerid][pJackTime]);
mysql_format(mySQLDB,str,sizeof(str),"%s`AdminOnline`= '%i', ",str,Player[playerid][pAdminOnline]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Vip`= '%i', ",str,GetPVarInt(playerid,"pVip"));
mysql_format(mySQLDB,str,sizeof(str),"%s`Donate`= '%i', ",str,Player[playerid][pDonate]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Kvest_1`= '%i', ",str,Player[playerid][pKvest_1]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Kvest_2`= '%i', ",str,Player[playerid][pKvest_2]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Kvest_3`= '%i', ",str,Player[playerid][pKvest_3]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Kvest_4`= '%i', ",str,Player[playerid][pKvest_4]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Kvest_5`= '%i', ",str,Player[playerid][pKvest_5]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Kvest_6`= '%i', ",str,Player[playerid][pKvest_6]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Kvest_7`= '%i', ",str,Player[playerid][pKvest_7]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Kvest_8`= '%i', ",str,Player[playerid][pKvest_8]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Kvest_9`= '%i', ",str,Player[playerid][pKvest_9]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Kvest_10`= '%i', ",str,Player[playerid][pKvest_10]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Kvest_11`= '%i', ",str,Player[playerid][pKvest_11]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Kvest_12`= '%i', ",str,Player[playerid][pKvest_12]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Repost`= '%s', ",str,Player[playerid][pRepost]);
mysql_format(mySQLDB,str,sizeof(str),"%s`AdmLeader`= '%i', ",str,Player[playerid][pAdminLeader]);
mysql_format(mySQLDB,str,sizeof(str),"%s`AdmBan`= '%i', ",str,Player[playerid][pAdminBan]);
mysql_format(mySQLDB,str,sizeof(str),"%s`AdmSkript`= '%i', ",str,Player[playerid][pAdminSkripter]);
mysql_format(mySQLDB,str,sizeof(str),"%s`JailBlock`= '%i', ",str,Player[playerid][pJailBlock]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Fmute`= '%i', ",str,Player[playerid][pFMuteTime]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Frisk`= '%i', ",str,Player[playerid][pFrisk]);
mysql_format(mySQLDB,str,sizeof(str),"%s`ADostup`= '%i', ",str,Player[playerid][pADostup]);
mysql_format(mySQLDB,str,sizeof(str),"%s`Apass`= '%s', ",str,Player[playerid][pApass]);
mysql_format(mySQLDB,str,sizeof(str),"%s`JoStep` = '%i' WHERE `Nickname` = '%s'",str,GetPVarInt(playerid,"JoKvestStep"),sendername(playerid));
mysql_function_query(mySQLDB, str, false, "", "");
//mysql_query(str);
}
return true;
}

publics LoadAccount(playerid,password[])


publics LoadAccount(playerid,password[])
{
new rows, fields,string[144];
cache_get_data(rows, fields);
if(rows)
{
Player[playerid][pID] = cache_get_field_content_int(0, "ID", mySQLDB);
cache_get_field_content(0, "Nickname", Player[playerid][pName]);
cache_get_field_content(0, "Password", Player[playerid][pKey]);
SetPVarInt(playerid, "pLevel",cache_get_field_content_int(0, "Level", mySQLDB));
Player[playerid][pAdmin] = cache_get_field_content_int(0, "Admin", mySQLDB);
SetPVarInt(playerid,"Reg",cache_get_field_content_int(0, "Reg", mySQLDB));
SetPVarInt(playerid,"Sex",cache_get_field_content_int(0, "Sex", mySQLDB));
SetPVarInt(playerid,"pSpawn",cache_get_field_content_int(0, "Spawn", mySQLDB));
SetPVarInt(playerid, "pExp",cache_get_field_content_int(0, "Exp", mySQLDB));
Player[playerid][pBankPass] = cache_get_field_content_int(0, "BankPass", mySQLDB);
SetPVarInt(playerid,"pMoney",cache_get_field_content_int(0, "Money", mySQLDB));
Player[playerid][pBank] = cache_get_field_content_int(0, "Bank", mySQLDB);
Player[playerid][pMuteTime] = cache_get_field_content_int(0, "MuteTime", mySQLDB);
Player[playerid][pJob] = cache_get_field_content_int(0, "Job", mySQLDB);
Player[playerid][pPayCheck] = cache_get_field_content_int(0, "PayCheck", mySQLDB);
Player[playerid][pJailed] = bool:cache_get_field_content_int(0, "Jailed", mySQLDB);
Player[playerid][pJailTime] = cache_get_field_content_int(0, "JailTime", mySQLDB);
Player[playerid][pMedicTime] = cache_get_field_content_int(0, "MedicTime", mySQLDB);
Player[playerid][pMats] = cache_get_field_content_int(0, "Mats", mySQLDB);
Player[playerid][pDrugs] = cache_get_field_content_int(0, "Drugs", mySQLDB);
Player[playerid][pJobTime] = cache_get_field_content_int(0, "JobTime", mySQLDB);
Player[playerid][pMember] = cache_get_field_content_int(0, "Member", mySQLDB);
Player[playerid][pLeader] = cache_get_field_content_int(0, "Leader", mySQLDB);
Player[playerid][pZam] = cache_get_field_content_int(0, "Zam", mySQLDB);
Player[playerid][pRank] = cache_get_field_content_int(0, "Rank", mySQLDB);
Player[playerid][pModel] = cache_get_field_content_int(0, "Model", mySQLDB);
Player[playerid][pChar] = cache_get_field_content_int(0, "Char", mySQLDB);
Player[playerid][pPbiskey] = cache_get_field_content_int(0, "Pbiskey", mySQLDB);
Player[playerid][pTWarns] = cache_get_field_content_int(0, "TWarns", mySQLDB);
Player[playerid][pCarLic] = bool:cache_get_field_content_int(0, "CarLic", mySQLDB);
Player[playerid][pMotoLic] = bool:cache_get_field_content_int(0, "MotoLic", mySQLDB);
Player[playerid][pTruckLic] = bool:cache_get_field_content_int(0, "TruckLic", mySQLDB);
Player[playerid][pTruckELic] = bool:cache_get_field_content_int(0, "TruckELic", mySQLDB);
Player[playerid][pFlyLic] = bool:cache_get_field_content_int(0, "FlyLic", mySQLDB);
Player[playerid][pBoatLic] = bool:cache_get_field_content_int(0, "BoatLic", mySQLDB);
Player[playerid][pSD] = bool:cache_get_field_content_int(0, "SD", mySQLDB);
Player[playerid][pGunLic] = bool:cache_get_field_content_int(0, "GunLic", mySQLDB);
Player[playerid][pTaxiLic] = bool:cache_get_field_content_int(0, "TaxiLic", mySQLDB);
Player[playerid][pGruzSkill] = cache_get_field_content_int(0, "GruzSkill", mySQLDB);
Player[playerid][pDrugSkill] = cache_get_field_content_int(0, "DrugSkill", mySQLDB);
Player[playerid][pGunSkill] = cache_get_field_content_int(0, "GunSkill", mySQLDB);
Player[playerid][pCarSkill] = cache_get_field_content_int(0, "CarSkill", mySQLDB);
Player[playerid][pJackSkill] = cache_get_field_content_int(0, "JackSkill", mySQLDB);
Player[playerid][pRobSkill] = cache_get_field_content_int(0, "RobSkill", mySQLDB);
Player[playerid][pRobHouseSkill] = cache_get_field_content_int(0, "RobHouseSkill", mySQLDB);
Player[playerid][pTimePizdanul] = cache_get_field_content_int(0, "TimePizdanul", mySQLDB);
Player[playerid][pRobHouseTime] = cache_get_field_content_int(0, "RobHouseTime", mySQLDB);
Player[playerid][pMechSkill] = cache_get_field_content_int(0, "MechSkill", mySQLDB);
Player[playerid][pTruckSkill] = cache_get_field_content_int(0, "TruckSkill", mySQLDB);
Player[playerid][pDetSkill] = cache_get_field_content_int(0, "DetSkill", mySQLDB);
Player[playerid][pHeadValue] = cache_get_field_content_int(0, "HeadValue", mySQLDB);
Player[playerid][pHunterValue] = cache_get_field_content_int(0, "HunterValue", mySQLDB);
Player[playerid][pTruckETime] = cache_get_field_content_int(0, "TruckETime", mySQLDB);
Player[playerid][pPayDay] = cache_get_field_content_int(0, "PayDay", mySQLDB);
Player[playerid][pWarns] = cache_get_field_content_int(0, "Warns", mySQLDB);
Player[playerid][pBoxing] = bool:cache_get_field_content_int(0, "Boxing", mySQLDB);
Player[playerid][pKunfu] = bool:cache_get_field_content_int(0, "Kunfu", mySQLDB);
Player[playerid][pKneehead] = bool:cache_get_field_content_int(0, "Kneehead", mySQLDB);
Player[playerid][pGrabkick] = bool:cache_get_field_content_int(0, "Grabkick", mySQLDB);
Player[playerid][pFStyle] = cache_get_field_content_int(0, "FStyle", mySQLDB);
Player[playerid][pRope] = bool:cache_get_field_content_int(0, "Rope", mySQLDB);
Player[playerid][pCheatPassword] = bool:cache_get_field_content_int(0, "CheatPassword", mySQLDB);
Player[playerid][pGPS] = bool:cache_get_field_content_int(0, "GPS", mySQLDB);
Player[playerid][pSigs] = cache_get_field_content_int(0, "Sigs", mySQLDB);
Player[playerid][pPivo] = cache_get_field_content_int(0, "Pivo", mySQLDB);
Player[playerid][pWanted] = cache_get_field_content_int(0, "Wanted", mySQLDB);
Player[playerid][pRobTime] = cache_get_field_content_int(0, "RobTime", mySQLDB);
Player[playerid][pJackTime] = cache_get_field_content_int(0, "JackTime", mySQLDB);
Player[playerid][pAdminOnline] = cache_get_field_content_int(0, "AdminOnline", mySQLDB);
SetPVarInt(playerid,"pVip",cache_get_field_content_int(0, "Vip", mySQLDB));
Player[playerid][pDonate] = cache_get_field_content_int(0, "Donate", mySQLDB);
Player[playerid][pKvest_1] = bool:cache_get_field_content_int(0, "Kvest_1", mySQLDB);
Player[playerid][pKvest_2] = bool:cache_get_field_content_int(0, "Kvest_2", mySQLDB);
Player[playerid][pKvest_3] = bool:cache_get_field_content_int(0, "Kvest_3", mySQLDB);
Player[playerid][pKvest_4] = bool:cache_get_field_content_int(0, "Kvest_4", mySQLDB);
Player[playerid][pKvest_5] = bool:cache_get_field_content_int(0, "Kvest_5", mySQLDB);
Player[playerid][pKvest_6] = bool:cache_get_field_content_int(0, "Kvest_6", mySQLDB);
Player[playerid][pKvest_7] = bool:cache_get_field_content_int(0, "Kvest_7", mySQLDB);
Player[playerid][pKvest_8] = bool:cache_get_field_content_int(0, "Kvest_8", mySQLDB);
Player[playerid][pKvest_9] = bool:cache_get_field_content_int(0, "Kvest_9", mySQLDB);
Player[playerid][pKvest_10] = bool:cache_get_field_content_int(0, "Kvest_10", mySQLDB);
Player[playerid][pKvest_11] = bool:cache_get_field_content_int(0, "Kvest_11", mySQLDB);
Player[playerid][pKvest_12] = bool:cache_get_field_content_int(0, "Kvest_12", mySQLDB);
cache_get_field_content(0, "Repost", Player[playerid][pRepost]);
Player[playerid][pAdminLeader] = bool:cache_get_field_content_int(0, "AdmLeader", mySQLDB);
Player[playerid][pAdminBan] = bool:cache_get_field_content_int(0, "AdmBan", mySQLDB);
Player[playerid][pAdminSkripter] = bool:cache_get_field_content_int(0, "AdmSkript", mySQLDB);
Player[playerid][pJailBlock] = bool:cache_get_field_content_int(0, "JailPrice", mySQLDB);
Player[playerid][pFMuteTime] = cache_get_field_content_int(0, "Fmute", mySQLDB);
Player[playerid][pFrisk] = cache_get_field_content_int(0, "Frisk", mySQLDB);
cache_get_field_content(0, "Apass", Player[playerid][pApass]);
Player[playerid][pADostup] = bool:cache_get_field_content_int(0, "ADostup", mySQLDB);
SetPVarInt(playerid,"JoKvestStep",cache_get_field_content_int(0, "JoStep", mySQLDB));
SetPVarInt(playerid, "pLogged",1);
Logged[playerid] = true;
DisablePlayerCheckpoint(playerid);
new ip[MAX_PLAYER_NAME];
GetPlayerIp(playerid,ip,sizeof(ip));
ConnectIP[playerid] = ip;
if (Player[playerid][pAdmin] == 0)
{
f(string, "Ïîäêëþ÷åíèå: %s[%d] || IP: {FFFFFF}%s", sendername(playerid),playerid,ip);
ABroadCast(COLOR_GREY,string,1);
}
if (Player[playerid][pAdmin] != 0)
{
f(string, "Ïîäêëþ÷åíèå: %s[%d] || IP: {00D900}%s", sendername(playerid),playerid,ip);
ABroadCast(COLOR_GREY,string,1);
}
for(new i=1; i <= HOME; i++)
{
if(!strcmp(HouseInfo[i][hOwner],sendername(playerid),true) && HouseInfo[i][hOwned] == 1)
{
Player[playerid][pPhousekey] = i;
break;
}
}
/*mysql_format(mySQLDB,string, sizeof(string), "SELECT ID FROM house WHERE Owner = '%s'", sendername(playerid));
mysql_function_query(mySQLDB, string, true, "CallbackGiveHouse", "d", playerid);*/
SetPlayerScore(playerid, GetPVarInt(playerid, "pLevel"));
SetPlayerWantedLevel(playerid,Player[playerid][pWanted]);
TextDrawShowForPlayer(playerid,ServerTime);
TextDrawShowForPlayer(playerid,ServerDate);
TextDrawShowForPlayer(playerid,ServerLogo);
SetPlayerColor(playerid,0xFFFFFF80);
TeleportTime[playerid] = 10;
DisablePlayerCheckpoint(playerid);
PMOnline[playerid] = false;
SpawnPlayer(playerid),OnPlayerReSpawn(playerid);
if(Player[playerid][pAdmin] != 0)send(playerid,0xFFFF00AA,"Äëÿ ïîëó÷åíèÿ àäìèíèñòðàòîðñêèõ ïðàâ, èñïîëüçóéòå êîìàíäó ''/aduty''.");
//Ïðîâåðêà íà ëè÷íûé êàð.
//new CarCheckString[128];
//mysql_format(mySQLDB,CarCheckString, sizeof(CarCheckString), "SELECT * FROM "TABLE_VEHICLE_PLAYER" WHERE `Owner` = '%s'", sendername(playerid));
//mysql_function_query(mySQLDB, string, true, "LoadPlayerAuto", "d", playerid);
//send(playerid,COLOR_ANTICHEAT,"[UniteD: Guard] {ffffff}Èä¸ò ïîèñê ëè÷íûõ àâòî ïðèâÿçàííûõ ê âàøåìó àêêàóíòó...");
return true;
}
else
{
ErrorPas[playerid]++;
f(string,"[ÎØÈÁÊÀ] {FFFFFF}Íåâåðíûé ïàðîëü. Îñòàëîñü ïîïûòîê: {FF0000}%d{FFFFFF}.",3-ErrorPas[playerid]);
send(playerid,0xFF0000AA,string);
if(ErrorPas[playerid] >= 3)
{
switch(GetPVarInt(playerid,"Sex"))
{
case 1:f(string,"Àíòè÷èò: %s[%d] áûë êèêíóò. Ïðè÷èíà: Ïîäáîð ïàðîëÿ.",Player[playerid][pName],playerid);
case 2:f(string,"Àíòè÷èò: %s[%d] áûëà êèêíóòà. Ïðè÷èíà: Ïîäáîð ïàðîëÿ.",Player[playerid][pName],playerid);
}
ABroadCast(0xFFFF00AA,string,1);
send(playerid,0xFFFF00AA,"Âû áûëè êèêíóòû àíòè÷èòîì. Ïðè÷èíà: Ïîäáîð ïàðîëÿ.");
SetTimerEx("KickFix",1000,0,"i",playerid);
return true;
}
ShowLogin(playerid);
}
return false;
}

DeimoS
26.11.2016, 12:53
cache_get_field_content(0, "Apass", Player[playerid][pApass]);
на

cache_get_field_content(0, "Apass", Player[playerid][pApass], 32);

kala4iks
26.11.2016, 14:32
cache_get_field_content(0, "Apass", Player[playerid][pApass]);
на

cache_get_field_content(0, "Apass", Player[playerid][pApass], 32);

Когда первый раз придумываю пароль и не выходя из игры снова пытаюсь авторизоваться, но ввожу пароль не правильно то пишет что я ввел не правильно но если перезайти и при авторизации вести любой пароль то пускает.

И пароль в этот раз как перезайти и авторизоваться под любым паролем просто напросто с базы данных слетает.

DeimoS
27.11.2016, 02:59
mysql_log покажи

kala4iks
27.11.2016, 12:29
mysql_log покажи


[11:30:44] [WARNING] CMySQLResult::GetRowData - invalid row ('48') or field index ('1')
[11:30:44] [WARNING] CMySQLResult::GetRowData - invalid row ('48') or field index ('2')
[11:30:44] [WARNING] CMySQLResult::GetRowData - invalid row ('48') or field index ('3')
[11:30:44] [WARNING] CMySQLResult::GetRowData - invalid row ('48') or field index ('4')
[11:30:44] [WARNING] CMySQLResult::GetRowData - invalid row ('48') or field index ('5')

kala4iks
29.11.2016, 18:28
Help....

kala4iks
03.12.2016, 14:16
Эх не кто не знает. Пароль сбрасывается после перезахода в игру 2-3 раз.

kala4iks
03.12.2016, 16:24
Первый раз захожу придумываю сохроняется потом перехахожу ввожу все норм а как ток выхожу он просто проподает.

kala4iks
08.12.2016, 19:06
Help

DeimoS
08.12.2016, 19:46
case DIALOG_ADUTY:
{
if(response)
{
if(!strlen(inputtext))return ShowPlayerDialog(playerid,DIALOG_ADUTY,DIALOG_STYLE_PASSWORD,"{33CCFF}Администраторские права","{FFE4B5}Введи свой пароль для получения администраторских прав.","ОК","Закрыть");

printf("\n\n\ninputtest - |%s|\n\npApass - |%s|\n\n\n", inputtext,Player[playerid][pApass]);

if(!strcmp(inputtext,Player[playerid][pApass],true))
{
switch(GetPVarInt(playerid,"Sex"))
{
case 1: f(string,"%s %s[%d] заступил на дежурство.",NameAdmin[Player[playerid][pAdmin]-1],sendername(playerid),playerid);
case 2: f(string,"%s %s[%d] заступила на дежурство.",NameAdmin[Player[playerid][pAdmin]-1],sendername(playerid),playerid);
}
ABroadCast(COLOR_YELLOW,string,1);
send(playerid,COLOR_YELLOW,string);
AdminDuty[playerid] = true;
}
else
{
AdutyPas[playerid]++;
f(string,"[ОШИБКА] {FFFFFF}Неверный пароль от ''/aduty''. Осталось попыток {FF0000}%d{FFFFFF}.",3-AdutyPas[playerid]);
send(playerid,0xFF0000AA,string);
if(AdutyPas[playerid] >= 3)
{
f(string,"Античит: %s[%d] был(а) кикнут(а). Причина: Подбор пароля к ''/aduty''.",Player[playerid][pName],playerid);
ABroadCast(COLOR_YELLOW,string,1);
send(playerid,COLOR_YELLOW,"Ты был(а) кикнут(а) античитом. Причина: Подбор пароля к ''/aduty''.");
Kick(playerid);
}
}
return 1;
}
}
И логи после авторизации покажи

kala4iks
08.12.2016, 21:27
case DIALOG_ADUTY:
{
if(response)
{
if(!strlen(inputtext))return ShowPlayerDialog(playerid,DIALOG_ADUTY,DIALOG_STYLE_PASSWORD,"{33CCFF}Администраторские права","{FFE4B5}Введи свой пароль для получения администраторских прав.","ОК","Закрыть");

printf("\n\n\ninputtest - |%s|\n\npApass - |%s|\n\n\n", inputtext,Player[playerid][pApass]);

if(!strcmp(inputtext,Player[playerid][pApass],true))
{
switch(GetPVarInt(playerid,"Sex"))
{
case 1: f(string,"%s %s[%d] заступил на дежурство.",NameAdmin[Player[playerid][pAdmin]-1],sendername(playerid),playerid);
case 2: f(string,"%s %s[%d] заступила на дежурство.",NameAdmin[Player[playerid][pAdmin]-1],sendername(playerid),playerid);
}
ABroadCast(COLOR_YELLOW,string,1);
send(playerid,COLOR_YELLOW,string);
AdminDuty[playerid] = true;
}
else
{
AdutyPas[playerid]++;
f(string,"[ОШИБКА] {FFFFFF}Неверный пароль от ''/aduty''. Осталось попыток {FF0000}%d{FFFFFF}.",3-AdutyPas[playerid]);
send(playerid,0xFF0000AA,string);
if(AdutyPas[playerid] >= 3)
{
f(string,"Античит: %s[%d] был(а) кикнут(а). Причина: Подбор пароля к ''/aduty''.",Player[playerid][pName],playerid);
ABroadCast(COLOR_YELLOW,string,1);
send(playerid,COLOR_YELLOW,"Ты был(а) кикнут(а) античитом. Причина: Подбор пароля к ''/aduty''.");
Kick(playerid);
}
}
return 1;
}
}
И логи после авторизации покажи

Я тут немного переделал.


case DIALOG_ADUTY:
{
if(response)
{
if(!strlen(inputtext))return ShowPlayerDialog(playerid,DIALOG_ADUTY,DIALOG_STYLE_PASSWORD,"{33CCFF}Администраторские права","{FFE4B5}Введи свой пароль для получения администраторских прав.","ОК","Закрыть");
mysql_format(mySQLDB,string,sizeof(string),"SELECT * FROM `accounts` WHERE `Nickname` = '%s' AND `Apass` = '%e'",sendername(playerid),inputtext);
mysql_tquery(mySQLDB,string,"AloginAuth","is",playerid,inputtext);
return 1;
}
}



forward AloginAuth(playerid, inputtext[]);
public AloginAuth(playerid, inputtext[])
{
new rows, fields,string[124];
cache_get_data(rows, fields);
if(!rows)
{
AdutyPas[playerid]++;
f(string,"[ОШИБКА] {FFFFFF}Неверный пароль от ''/aduty''. Осталось попыток {FF0000}%d{FFFFFF}.",3-AdutyPas[playerid]);
send(playerid,0xFF0000AA,string);
if(AdutyPas[playerid] >= 3)
{
f(string,"Античит: %s[%d] был(а) кикнут(а). Причина: Подбор пароля к ''/aduty''.",Player[playerid][pName],playerid);
ABroadCast(COLOR_YELLOW,string,1);
send(playerid,COLOR_YELLOW,"Ты был(а) кикнут(а) античитом. Причина: Подбор пароля к ''/aduty''.");
Kick(playerid);
}
}
else
{
f(string,"%s %s[%d] заступил%s на дежурство.",NameAdmin[Player[playerid][pAdmin]-1],sendername(playerid),playerid,GetPVarInt(playerid, "Sex") == 1 ? ("") : ("а"));
ABroadCast(COLOR_YELLOW,string,1);
send(playerid,COLOR_YELLOW,string);
AdminDuty[playerid] = true;
}
return 1;
}

DeimoS
08.12.2016, 21:56
case DIALOG_ADUTY:
{
if(response)
{
if(!strlen(inputtext))return ShowPlayerDialog(playerid,DIALOG_ADUTY,DIALOG_STYLE_PASSWORD,"{33CCFF}Администраторские права","{FFE4B5}Введи свой пароль для получения администраторских прав.","ОК","Закрыть");
mysql_format(mySQLDB,string,sizeof(string),"SELECT * FROM `accounts` WHERE `Nickname` = '%s' AND `Apass` = '%e'",sendername(playerid),inputtext);
print(string);
mysql_tquery(mySQLDB,string,"AloginAuth","is",playerid,inputtext);
return 1;
}
}
И логи

kala4iks
08.12.2016, 23:38
case DIALOG_ADUTY:
{
if(response)
{
if(!strlen(inputtext))return ShowPlayerDialog(playerid,DIALOG_ADUTY,DIALOG_STYLE_PASSWORD,"{33CCFF}Администраторские права","{FFE4B5}Введи свой пароль для получения администраторских прав.","ОК","Закрыть");
mysql_format(mySQLDB,string,sizeof(string),"SELECT * FROM `accounts` WHERE `Nickname` = '%s' AND `Apass` = '%e'",sendername(playerid),inputtext);
print(string);
mysql_tquery(mySQLDB,string,"AloginAuth","is",playerid,inputtext);
return 1;
}
}
И логи




----------
Loaded log file: "server_log.txt".
----------

SA-MP Dedicated Server
----------------------
v0.3.7-R2, (C)2005-2015 SA-MP Team

[22:30:46] weburl = "www.sa-mp.com" (string)
[22:30:46] messageholelimit = 3000 (int)
[22:30:46] lagcompmode = 1 (int)
[22:30:46]
[22:30:46] Server Plugins
[22:30:46] --------------
[22:30:46] Loading plugin: mysql.dll
[22:30:47] >> plugin.mysql: R39 successfully loaded.
[22:30:47] Loaded.
[22:30:47] Loading plugin: streamer.dll
[22:30:47]

*** Streamer Plugin v2.6.1 by Incognito loaded ***

[22:30:47] Loaded.
[22:30:47] Loading plugin: sscanf.dll
[22:30:47]

[22:30:47] ===============================

[22:30:47] sscanf plugin loaded.

[22:30:47] Version: 2.8.1

[22:30:47] (c) 2012 Alex "Y_Less" Cole

[22:30:47] ===============================

[22:30:47] Loaded.
[22:30:47] Loading plugin: dc_cmd.dll
[22:30:47] Daniel''s CMD plugin v2.01
[22:30:47] Loaded.
[22:30:47] Loaded 4 plugins.

[22:30:47]
[22:30:47] Filterscripts
[22:30:47] ---------------
[22:30:47] Loading filterscript 'Connect.amx'...
[22:30:47] Unable to load filterscript 'Connect.amx'.
[22:30:47] Loaded 0 filterscripts.

[22:30:47] Подключение к базе успешно
[22:30:47] |Пикапы: Загружены - потрачено 0 (ms)
[22:30:47] |Объекты созданы - потрачено 1 (ms)
[22:30:48] Текстдравы созданы- потрачено 37 (ms)
[22:30:48] |Мод полностью загружен - потрачено 139 (ms)
[22:30:48] Number of vehicle models: 0
[22:30:48] Success: ID личных авто были перезаписаны: Потрачено - 1 мс
[22:30:48] |Личные авто 2 ед: были загружены. Потрачено - 1 мс
[22:30:48] |Фракционные авто 323 ед. загружены - потрачено 3 (ms)
[22:30:48] |Загрузка объектов с БД прошла за: 1 мс
[22:30:48] |Дома: 16 - потрачено 3 (ms)
[22:30:48] |Банкоматы: 19 - потрачено 0 (ms)
[22:30:48] |Бизнес: 5 - потрачено 0 (ms)
[22:30:48] |Общак загружен 18 - потрачено 1 (ms)
[22:30:48] |Инструменты загружены.
[22:30:48] |Зарплата загружена.
[22:30:48] |49 гангзон загружены.
[22:30:48] |Фракции: 19 - потрачено 2 (ms)
[22:30:48] |Загрузка БанИнформации прошла за: 1 мс
[22:30:48] [UD:Guard_CONSOLE]: Боты телепортаторы 5 шт. загружены
[22:30:48] |Уличные авто загружены: 18 едза: 0 мс
[22:30:48] |Все авто сервера загружены. Общее количество 343 едениц.
[22:30:48] Игровой мод готов к работе.
[22:31:54] [connection] 192.168.1.110:54453 requests connection cookie.
[22:31:55] [connection] incoming connection: 192.168.1.110:54453 id: 0
[22:31:55] [join] kala4ik has joined the server (0:192.168.1.110)
[22:32:36] [part] kala4ik has left the server (0:1)
[22:33:38] [connection] 192.168.1.110:55788 requests connection cookie.
[22:33:39] [connection] incoming connection: 192.168.1.110:55788 id: 0
[22:33:39] [join] kala4ik has joined the server (0:192.168.1.110)
[22:34:13] Гл.Администратор kala4ik[0] завершил дежурство.
[22:34:17] SELECT * FROM `accounts` WHERE `Nickname` = 'kala4ik' AND `Apass` = 'dima0509'
[22:34:19] Гл.Администратор kala4ik[0] завершил дежурство.
[22:34:21] SELECT * FROM `accounts` WHERE `Nickname` = 'kala4ik' AND `Apass` = '1'
[22:34:23] [part] kala4ik has left the server (0:1)
[22:35:02] [connection] 192.168.1.110:55842 requests connection cookie.
[22:35:03] [connection] incoming connection: 192.168.1.110:55842 id: 0
[22:35:04] [join] kala4ik has joined the server (0:192.168.1.110)
[22:35:20] SELECT * FROM `accounts` WHERE `Nickname` = 'kala4ik' AND `Apass` = '0'
[22:35:24] SELECT * FROM `accounts` WHERE `Nickname` = 'kala4ik' AND `Apass` = 'dima0509'
[22:35:26] Гл.Администратор kala4ik[0] завершил дежурство.
[22:35:28] SELECT * FROM `accounts` WHERE `Nickname` = 'kala4ik' AND `Apass` = '0'
[22:35:32] SELECT * FROM `accounts` WHERE `Nickname` = 'kala4ik' AND `Apass` = 'dima0509'
[22:35:34] Гл.Администратор kala4ik[0] завершил дежурство.
[22:35:36] [part] kala4ik has left the server (0:1)

DeimoS
09.12.2016, 00:19
forward AloginAuth(playerid, inputtext[]);
public AloginAuth(playerid, inputtext[])
{
new rows, fields,string[124];
cache_get_data(rows, fields);

printf("\n\n\nrows = %d\n\n\n", rows);

if(!rows)
{
AdutyPas[playerid]++;
f(string,"[ОШИБКА] {FFFFFF}Неверный пароль от ''/aduty''. Осталось попыток {FF0000}%d{FFFFFF}.",3-AdutyPas[playerid]);
send(playerid,0xFF0000AA,string);
if(AdutyPas[playerid] >= 3)
{
f(string,"Античит: %s[%d] был(а) кикнут(а). Причина: Подбор пароля к ''/aduty''.",Player[playerid][pName],playerid);
ABroadCast(COLOR_YELLOW,string,1);
send(playerid,COLOR_YELLOW,"Ты был(а) кикнут(а) античитом. Причина: Подбор пароля к ''/aduty''.");
Kick(playerid);
}
}
else
{
f(string,"%s %s[%d] заступил%s на дежурство.",NameAdmin[Player[playerid][pAdmin]-1],sendername(playerid),playerid,GetPVarInt(playerid, "Sex") == 1 ? ("") : ("а"));
ABroadCast(COLOR_YELLOW,string,1);
send(playerid,COLOR_YELLOW,string);
AdminDuty[playerid] = true;
}
return 1;
}
И логи

kala4iks
09.12.2016, 11:49
forward AloginAuth(playerid, inputtext[]);
public AloginAuth(playerid, inputtext[])
{
new rows, fields,string[124];
cache_get_data(rows, fields);

printf("\n\n\nrows = %d\n\n\n", rows);

if(!rows)
{
AdutyPas[playerid]++;
f(string,"[ОШИБКА] {FFFFFF}Неверный пароль от ''/aduty''. Осталось попыток {FF0000}%d{FFFFFF}.",3-AdutyPas[playerid]);
send(playerid,0xFF0000AA,string);
if(AdutyPas[playerid] >= 3)
{
f(string,"Античит: %s[%d] был(а) кикнут(а). Причина: Подбор пароля к ''/aduty''.",Player[playerid][pName],playerid);
ABroadCast(COLOR_YELLOW,string,1);
send(playerid,COLOR_YELLOW,"Ты был(а) кикнут(а) античитом. Причина: Подбор пароля к ''/aduty''.");
Kick(playerid);
}
}
else
{
f(string,"%s %s[%d] заступил%s на дежурство.",NameAdmin[Player[playerid][pAdmin]-1],sendername(playerid),playerid,GetPVarInt(playerid, "Sex") == 1 ? ("") : ("а"));
ABroadCast(COLOR_YELLOW,string,1);
send(playerid,COLOR_YELLOW,string);
AdminDuty[playerid] = true;
}
return 1;
}
И логи



----------
Loaded log file: "server_log.txt".
----------

SA-MP Dedicated Server
----------------------
v0.3.7-R2, (C)2005-2015 SA-MP Team

[10:42:54] weburl = "www.sa-mp.com" (string)
[10:42:54] messageholelimit = 3000 (int)
[10:42:54] lagcompmode = 1 (int)
[10:42:54]
[10:42:54] Server Plugins
[10:42:54] --------------
[10:42:54] Loading plugin: mysql.dll
[10:42:57] >> plugin.mysql: R39 successfully loaded.
[10:42:57] Loaded.
[10:42:57] Loading plugin: streamer.dll
[10:42:58]

*** Streamer Plugin v2.6.1 by Incognito loaded ***

[10:42:58] Loaded.
[10:42:58] Loading plugin: sscanf.dll
[10:42:58]

[10:42:58] ===============================

[10:42:58] sscanf plugin loaded.

[10:42:58] Version: 2.8.1

[10:42:58] (c) 2012 Alex "Y_Less" Cole

[10:42:58] ===============================

[10:42:58] Loaded.
[10:42:58] Loading plugin: dc_cmd.dll
[10:42:58] Daniel''s CMD plugin v2.01
[10:42:58] Loaded.
[10:42:58] Loaded 4 plugins.

[10:42:58]
[10:42:58] Filterscripts
[10:42:58] ---------------
[10:42:58] Loading filterscript 'Connect.amx'...
[10:42:58] Unable to load filterscript 'Connect.amx'.
[10:42:58] Loaded 0 filterscripts.

[10:42:59] Подключение к базе успешно
[10:43:00] |Пикапы: Загружены - потрачено 1 (ms)
[10:43:00] |Объекты созданы - потрачено 2 (ms)
[10:43:00] Текстдравы созданы- потрачено 139 (ms)
[10:43:00] |Мод полностью загружен - потрачено 1536 (ms)
[10:43:00] Number of vehicle models: 0
[10:43:00] Success: ID личных авто были перезаписаны: Потрачено - 0 мс
[10:43:00] |Личные авто 2 ед: были загружены. Потрачено - 0 мс
[10:43:00] |Фракционные авто 323 ед. загружены - потрачено 5 (ms)
[10:43:00] |Загрузка объектов с БД прошла за: 0 мс
[10:43:00] |Дома: 16 - потрачено 5 (ms)
[10:43:00] |Банкоматы: 19 - потрачено 1 (ms)
[10:43:00] |Бизнес: 5 - потрачено 1 (ms)
[10:43:00] |Общак загружен 18 - потрачено 0 (ms)
[10:43:00] |Инструменты загружены.
[10:43:00] |Зарплата загружена.
[10:43:00] |49 гангзон загружены.
[10:43:00] |Фракции: 19 - потрачено 2 (ms)
[10:43:00] |Загрузка БанИнформации прошла за: 0 мс
[10:43:00] [UD:Guard_CONSOLE]: Боты телепортаторы 5 шт. загружены
[10:43:00] |Уличные авто загружены: 18 едза: 1 мс
[10:43:00] |Все авто сервера загружены. Общее количество 343 едениц.
[10:43:00] Игровой мод готов к работе.
[10:44:06] [connection] 192.168.1.110:60958 requests connection cookie.
[10:44:07] [connection] incoming connection: 192.168.1.110:60958 id: 0
[10:44:08] [join] kala4ik has joined the server (0:192.168.1.110)
[10:44:36] Гл.Администратор kala4ik[0] завершил дежурство.
[10:44:39] SELECT * FROM `accounts` WHERE `Nickname` = 'kala4ik' AND `Apass` = '0'
[10:44:39]


rows = 0



[10:44:42] SELECT * FROM `accounts` WHERE `Nickname` = 'kala4ik' AND `Apass` = 'dima0509'
[10:44:42]


rows = 1



[10:44:45] Гл.Администратор kala4ik[0] завершил дежурство.
[10:44:47] [part] kala4ik has left the server (0:1)
[10:45:37] [connection] 192.168.1.110:54206 requests connection cookie.
[10:45:38] [connection] incoming connection: 192.168.1.110:54206 id: 0
[10:45:38] [join] kala4ik has joined the server (0:192.168.1.110)
[10:45:55] SELECT * FROM `accounts` WHERE `Nickname` = 'kala4ik' AND `Apass` = '0'
[10:45:55]


rows = 0



[10:46:00] SELECT * FROM `accounts` WHERE `Nickname` = 'kala4ik' AND `Apass` = 'dima0509'
[10:46:00]


rows = 1



[10:46:03] Гл.Администратор kala4ik[0] завершил дежурство.
[10:46:05] SELECT * FROM `accounts` WHERE `Nickname` = 'kala4ik' AND `Apass` = '0'
[10:46:05]


rows = 0



[10:46:10] SELECT * FROM `accounts` WHERE `Nickname` = 'kala4ik' AND `Apass` = 'dima0509'
[10:46:10]


rows = 1



[10:46:12] Гл.Администратор kala4ik[0] завершил дежурство.
[10:46:14] [part] kala4ik has left the server (0:1)
[10:47:07] [connection] 192.168.1.110:58001 requests connection cookie.
[10:47:08] [connection] incoming connection: 192.168.1.110:58001 id: 0
[10:47:08] [join] kala4ik has joined the server (0:192.168.1.110)
[10:47:29] SELECT * FROM `accounts` WHERE `Nickname` = 'kala4ik' AND `Apass` = '0'
[10:47:29]


rows = 0



[10:47:34] SELECT * FROM `accounts` WHERE `Nickname` = 'kala4ik' AND `Apass` = 'dima0509'
[10:47:34]


rows = 0



[10:47:43] SELECT * FROM `accounts` WHERE `Nickname` = 'kala4ik' AND `Apass` = 'dima0509'
[10:47:43]


rows = 0



[10:47:43] [part] kala4ik has left the server (0:2)

DeimoS
09.12.2016, 12:42
Что это у тебя за запрос такой, при котором вместо пароля отправляется нуль?

SELECT * FROM `accounts` WHERE `Nickname` = 'kala4ik' AND `Apass` = '0'
И что-то не вижу проблем. Во всех случаях, когда пароль верный, возвращается одна строка. А когда неверный - не возвращается строк. В чём проблема?

qwezert
09.12.2016, 12:51
Что это у тебя за запрос такой, при котором вместо пароля отправляется нуль?

SELECT * FROM `accounts` WHERE `Nickname` = 'kala4ik' AND `Apass` = '0'
И что-то не вижу проблем. Во всех случаях, когда пароль верный, возвращается одна строка. А когда неверный - не возвращается строк. В чём проблема?
Не всегда все верно, у него в логах последние 2 раза при вводе правильного пароля вернуло 0 строк. У него с сохранением что то.

kala4iks
09.12.2016, 13:06
Что это у тебя за запрос такой, при котором вместо пароля отправляется нуль?

SELECT * FROM `accounts` WHERE `Nickname` = 'kala4ik' AND `Apass` = '0'
И что-то не вижу проблем. Во всех случаях, когда пароль верный, возвращается одна строка. А когда неверный - не возвращается строк. В чём проблема?

Это я пробую отправить пароль 0 и проверяю пустит ли если ввести совсем другой пароль или нет.

- - - Добавлено - - -


Не всегда все верно, у него в логах последние 2 раза при вводе правильного пароля вернуло 0 строк. У него с сохранением что то.

С сохранением возможно, но вот в чем и прикол, когда я первый раз придумываю он сохраняется в базу данных, потом если выйти из игры войти то он все еще сохронен но если после того как воторой раз вошел и потом выйти пароль просто сбрасывается и в базе данных он просто проподает на пустое место.

qwezert
09.12.2016, 13:34
Это я пробую отправить пароль 0 и проверяю пустит ли если ввести совсем другой пароль или нет.

- - - Добавлено - - -



С сохранением возможно, но вот в чем и прикол, когда я первый раз придумываю он сохраняется в базу данных, потом если выйти из игры войти то он все еще сохронен но если после того как воторой раз вошел и потом выйти пароль просто сбрасывается и в базе данных он просто проподает на пустое место.
Ну вот тебе и проблема. У тебя скорее всего(как мне кажется) при создании пароля - он сохраняется, в при следующем заходе - пароль загружается для проверки - но не сохраняется нигде и поэтому после выхода - сохраняется в БД пустая переменная которая должна хранить этот самый пароль. Это только версия, нужно проверять что у тебя сохраняется и как. Дерзай)

DeimoS
09.12.2016, 14:17
Зачем вообще сохранять пароль при выходе с сервера? Разве он может измениться без какого-то ведома сервера, как, например, здоровье или координаты? Изменить его можно только со стороны скрипта, а значит и сохранять нужно только при изменении

kala4iks
09.12.2016, 14:57
Зачем вообще сохранять пароль при выходе с сервера? Разве он может измениться без какого-то ведома сервера, как, например, здоровье или координаты? Изменить его можно только со стороны скрипта, а значит и сохранять нужно только при изменении

В чем и проблема я так пробовал но когда я придумывал пароль но не сохронял он просто напросто не записывался в бд.

DeimoS
09.12.2016, 15:06
В чем и проблема я так пробовал но когда я придумывал пароль но не сохронял он просто напросто не записывался в бд.

Какая часть фразы "Сохраняй его сразу при изменении" тебе непонятна? :) Придумал пароль - отправил запрос и сохранил его.

case DIALOG_ADOSTUP:
{
if(!response)return 1;
if(!strlen(inputtext))return SPD(playerid,DIALOG_ADOSTUP,DIALOG_STYLE_INPUT,"{33CCFF}Администраторские права","{FFE4B5}У тебя еще не указан пароль к администраторским правам.\nПридумай и введи пароль отличающийся от основного пароля и нажми ''ОК''.","ОК","Закрыть");
if(strlen(inputtext) < 6 || strlen(inputtext) > 32)
{
send(playerid,0xFF0000AA,"[ОШИБКА] {FFFFFF}Длина пароля должна быть в пределах от 6 и до 32 символов.");
ShowPlayerDialog(playerid,DIALOG_ADOSTUP,DIALOG_STYLE_INPUT,"{33CCFF}Администраторские права","{FFE4B5}У тебя еще не указан пароль к администраторским правам.\nПридумай и введи пароль отличающийся от основного пароля и нажми ''ОК''.","ОК","Закрыть");
}
else
{
Player[playerid][pApass][0] = 0;
strcat(Player[playerid][pApass], inputtext);

new str[42+MAX_PLAYER_NAME-4+64+10+1];
mysql_format(mySQLDB, str, sizeof(str),"UPDATE "TABLE_ACCOUNT" SET Apass = '%s' WHERE Nickname = '%s'", inputtext, sendername(playerid));
mysql_function_query(mySQLDB, str, false, "", "");

f(string,"Твой администраторский пароль: %s. Не забывай его, а лучше запиши.", inputtext);
send(playerid,COLOR_GREEN,string);

switch(GetPVarInt(playerid,"Sex"))
{
case 1: f(string,"%s %s[%d] заступил на дежурство.", NameAdmin[Player[playerid][pAdmin]-1], sendername(playerid),playerid);
case 2: f(string,"%s %s[%d] заступила на дежурство.", NameAdmin[Player[playerid][pAdmin]-1], sendername(playerid),playerid);
}
ABroadCast(COLOR_YELLOW,string,1);
send(playerid,COLOR_YELLOW,string);
AdminDuty[playerid] = true;
Player[playerid][pADostup] = true;
}
}