kostik123123 0 Опубликовано 4 августа, 2019 Здравствуйте уважаемые пользователи форума CR-MP. Хочу обратиться к вам за помощью, я скачал мод Perfect RP у Ютубера (Mark Richards) и обнаружил там баг с банком. ВСЁ ВИДНО НА ВИДЕО. моё ВК - vk.com/vip_xam. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
kostik123123 0 Опубликовано 4 августа, 2019 case D_BANK_MENU: { if(!response) return 1; global_string = ""; switch(listitem) { case 3, 4: { format(global_string, 300, "{"#cSV"}1. {FFFFFF}Открыть новый банковский счет\n\ {"#cSV"}2. {FFFFFF}Управление счетами\n\ {"#cSV"}3. {FFFFFF}Оформить кредит\n\ {"#cSV"} \n\ {9C9B9D}У Вас в банке {FFFFFF}%d {9C9B9D}открыт%s", PI[playerid][pBankCount], PI[playerid][pBankCount] <= 1 ? ("ый счет") : PI[playerid][pBankCount] <= 4 ? ("ых счета") : ("ых счетов")); ShowPlayerDialog(playerid, D_BANK_MENU, DIALOG_STYLE_LIST, "{"#cSV"}Меню банка", global_string, "Далее", "Выход"); return 1; } case 0: { format(global_string, 300, "{FFFFFF}Уважаемый клиент!\n\n\ В данном меню Вы можете открыть новый счет в нашем банке\n\ На данный момент у Вас имеется {E4CD20}%d {FFFFFF}открытых счетов\n\ Стоимость открытия нового счета составит: {76CD5E}5000 рублей\n\n\ {FFFFFF}Вы согласны открыть новый счет в нашем банке?", PI[playerid][pBankCount]); ShowPlayerDialog(playerid, D_BANK_MENU + 1, DIALOG_STYLE_MSGBOX, "{"#cSV"}Открытие счета в банке", global_string, "Да", "Нет"); } case 1: { ShowPlayerDialog(playerid, D_BANK_MENU + 2, DIALOG_STYLE_LIST, "{"#cSV"}Управление счетами", "{"#cSV"}1. {FFFFFF}Список счетов и действия над ними\n{"#cSV"}2. {FFFFFF}Заблокировать счет\n{"#cSV"}3. {FFFFFF}Разблокировать счет\n{"#cSV"}4. {FFFFFF}Закрыть счет", "Выбрать", "Выход"); } } } case D_BANK_MENU + 1: { if(!response) return 1; if(GetMoney(playerid) < 5000) return SendClientMessage(playerid, -1, ""cER"У Вас недостаточно средств на счете, для открытия нового счета в банке"); PI[playerid][pBankCount] ++ ; MysqlUpdatePlayerInt(playerid, "bankcount", PI[playerid][pBankCount]); new player_ip[16]; GetPlayerIp(playerid, player_ip, sizeof player_ip); global_string = ""; mysql_format(dbHandle, global_string, 128, "INSERT INTO bank (name, ip, data, cash) values ('%s', '%s', NOW(), '250')", GetName(playerid), player_ip); mysql_tquery(dbHandle, global_string, "", ""); SendMes(playerid, 0x76CD5EFF, "[Банк]: {FFFFFF}новый счет на имя {F3F142}%s {FFFFFF}успешно открыт в нашем банке", GetName(playerid)); } case D_BANK_MENU + 2: { if(!response) return 1; switch(listitem) { case 0: { SetPVarInt(playerid, "bank_type", 1); global_string = ""; mysql_format(dbHandle, global_string, 128, "SELECT * FROM `bank` WHERE `name` = '%s'", GetName(playerid)); mysql_tquery(dbHandle, global_string, "ShowBankMoney", "i", playerid); } case 1: { ShowPlayerDialog(playerid, D_BANK_MENU + 3, DIALOG_STYLE_INPUT, "{"#cSV"}Заблокировать банковский счет", "{FFFFFF}В данном окне Вы можете заблокировать Ваш банковский счет\nПосле блокировки счета, Вы, и никто другой, не сможет совершать платежи и переводы на Ваш счет\nСчет всегда можно разблокировать в меню банка\n\nУкажите номер счета, который необходимо заблокировать:", "Далее", "Назад"); } case 2: { ShowPlayerDialog(playerid, D_BANK_MENU + 4, DIALOG_STYLE_INPUT, "{"#cSV"}Разблокировать банковский счет", "{FFFFFF}В данном окне Вы можете разблокировать Ваш банковский счет\n\nУкажите номер счета, который необходимо разблокировать:", "Далее", "Назад"); } case 3: { ShowPlayerDialog(playerid, D_BANK_MENU + 5, DIALOG_STYLE_INPUT, "{"#cSV"}Закрыть банковский счет", "{FFFFFF}В данном окне Вы можете закрыть счет в нашем банке\nСчет закрывается навсегда и больше не сможет использоваться\nВсе деньги, которые остались на этом счете, будут утеряны\n\nУкажите номер счета, который необходимо закрыть:", "Далее", "Назад"); } } } case D_BANK_MENU + 3: { if(!response) return 1; if(!(1 <= strlen(inputtext) <= 7)) return ShowPlayerDialog(playerid, D_BANK_MENU + 3, DIALOG_STYLE_INPUT, "{"#cSV"}Заблокировать банковский счет", "{FFFFFF}В данном окне Вы можете заблокировать Ваш банковский счет\nПосле блокировки счета, Вы, и никто другой, не сможет совершать платежи и переводы на Ваш счет\nСчет всегда можно разблокировать в меню банка\n\nУкажите номер счета, который необходимо заблокировать:", "Далее", "Назад"), SendClientMessage(playerid, -1, ""cER"Номер счета от 1 до 7 цифр и без запрещенных символов") & 1; for(new i = strlen(inputtext)-1; i != -1; i--) switch(inputtext[i]) { case '0'..'9': continue; default: return ShowPlayerDialog(playerid, D_BANK_MENU + 3, DIALOG_STYLE_INPUT, "{"#cSV"}Заблокировать банковский счет", "{FFFFFF}В данном окне Вы можете заблокировать Ваш банковский счет\nПосле блокировки счета, Вы, и никто другой, не сможет совершать платежи и переводы на Ваш счет\nСчет всегда можно разблокировать в меню банка\n\nУкажите номер счета, который необходимо заблокировать:", "Далее", "Назад"), SendClientMessage(playerid, -1, ""cER"Номер счета от 1 до 7 цифр и без запрещенных символов") & 1; } global_string = ""; mysql_format(dbHandle, global_string, 128, "SELECT * FROM bank WHERE id = '%i' and block = '0'", strval(inputtext)); mysql_tquery(dbHandle, global_string, "BlockBankMoney", "is", playerid, GetName(playerid)); } case D_BANK_MENU + 4: { if(!response) return 1; if(!(1 <= strlen(inputtext) <= 7)) return ShowPlayerDialog(playerid, D_BANK_MENU + 4, DIALOG_STYLE_INPUT, "{"#cSV"}Разблокировать банковский счет", "{FFFFFF}В данном окне Вы можете разблокировать Ваш банковский счет\n\nУкажите номер счета, который необходимо разблокировать:", "Далее", "Назад"), SendClientMessage(playerid, -1, ""cER"Номер счета от 1 до 7 цифр и без запрещенных символов") & 1; for(new i = strlen(inputtext)-1; i != -1; i--) switch(inputtext[i]) { case '0'..'9': continue; default: return ShowPlayerDialog(playerid, D_BANK_MENU + 4, DIALOG_STYLE_INPUT, "{"#cSV"}Разблокировать банковский счет", "{FFFFFF}В данном окне Вы можете разблокировать Ваш банковский счет\n\nУкажите номер счета, который необходимо разблокировать:", "Далее", "Назад"), SendClientMessage(playerid, -1, ""cER"Номер счета от 1 до 7 цифр и без запрещенных символов") & 1; } global_string = ""; mysql_format(dbHandle, global_string, 128, "SELECT * FROM bank WHERE id = '%i' and block = '1'", strval(inputtext)); mysql_tquery(dbHandle, global_string, "UnBlockBankMoney", "is", playerid, GetName(playerid)); } case D_BANK_MENU + 5: { if(!response) return 1; if(!(1 <= strlen(inputtext) <= 7)) return ShowPlayerDialog(playerid, D_BANK_MENU + 5, DIALOG_STYLE_INPUT, "{"#cSV"}Закрыть банковский счет", "{FFFFFF}В данном окне Вы можете закрыть счет в нашем банке\nСчет закрывается навсегда и больше не сможет использоваться\nВсе деньги, которые остались на этом счете, будут утеряны\n\nУкажите номер счета, который необходимо закрыть:", "Далее", "Назад"), SendClientMessage(playerid, -1, ""cER"Номер счета от 1 до 7 цифр и без запрещенных символов") & 1; for(new i = strlen(inputtext)-1; i != -1; i--) switch(inputtext[i]) { case '0'..'9': continue; default: return ShowPlayerDialog(playerid, D_BANK_MENU + 5, DIALOG_STYLE_INPUT, "{"#cSV"}Закрыть банковский счет", "{FFFFFF}В данном окне Вы можете закрыть счет в нашем банке\nСчет закрывается навсегда и больше не сможет использоваться\nВсе деньги, которые остались на этом счете, будут утеряны\n\nУкажите номер счета, который необходимо закрыть:", "Далее", "Назад"), SendClientMessage(playerid, -1, ""cER"Номер счета от 1 до 7 цифр и без запрещенных символов") & 1; } global_string = ""; mysql_format(dbHandle, global_string, 128, "SELECT * FROM bank WHERE id = '%i'", strval(inputtext)); mysql_tquery(dbHandle, global_string, "DeleteBankMoney", "is", playerid, GetName(playerid)); } case D_BANK_MONEY + 6: { if(!response) return 1; new bank_id = GetPVarInt(playerid, "bank_id"); mysql_format(dbHandle, global_string, 128, "UPDATE bank SET block = '1' WHERE id = '%d' and name = '%s'", bank_id, GetName(playerid)); mysql_tquery(dbHandle, global_string, "", ""); SendMes(playerid, 0x68CD78FF, "[Банк]: {FFFFFF}счет {F6F34D}№%d {FFFFFF}успешно заблокирован", bank_id); SendClientMessage(playerid, 0x68CD78FF, "[Банк]: {FFFFFF}на данный счет больше не могут совершаться платежи и переводы"); DeletePVar(playerid, "bank_id"); } case D_BANK_MONEY + 7: { if(!response) return 1; new bank_id = GetPVarInt(playerid, "bank_id"); mysql_format(dbHandle, global_string, 128, "UPDATE bank SET block = '0' WHERE id = '%d' and name = '%s'", bank_id, GetName(playerid)); mysql_tquery(dbHandle, global_string, "", ""); SendMes(playerid, 0x68CD78FF, "[Банк]: {FFFFFF}счет {F6F34D}№%d {FFFFFF}успешно разблокирован", bank_id); SendClientMessage(playerid, 0x68CD78FF, "[Банк]: {FFFFFF}теперь на данный счет можно совершать платежи и переводы"); DeletePVar(playerid, "bank_id"); } case D_BANK_MONEY + 8: { if(!response) return 1; new bank_id = GetPVarInt(playerid, "bank_id"); mysql_format(dbHandle, global_string, 128, "DELETE FROM bank WHERE id = '%d' and name = '%s'", bank_id, GetName(playerid)); mysql_tquery(dbHandle, global_string, "", ""); PI[playerid][pBankCount] --; MysqlUpdatePlayerInt(playerid, "bankcount", PI[playerid][pBankCount]); SendMes(playerid, 0x68CD78FF, "[Банк]: {FFFFFF}счет {F6F34D}№%d {FFFFFF}успешно закрыт", bank_id); SendClientMessage(playerid, 0x68CD78FF, "[Банк]: {FFFFFF}данный счет больше нельзя использовать"); DeletePVar(playerid, "bank_id"); } case D_BANK_MONEY: { if(!response) return DeletePVar(playerid, "bank_type") & 1; new b_id = GetPlayerListitemValue(playerid, listitem); SetPVarInt(playerid, "bank_id", b_id); new fmt_str[60]; global_string = ""; format(fmt_str, 128, "{"#cSV"}Управление банковским счетом №%d", b_id); switch(GetPVarInt(playerid, "bank_type")) { case 1: { if(Setting[playerid][3] != 1) { SendMes(playerid, 0xF2F530FF, "[Банк]: Управление банковским счетом {79CB64}№%d", b_id); for(new i; i < 24; i++) TextDrawShowForPlayer(playerid, TD_Bank[i]); TextDrawShowForPlayer(playerid, TD_BankExit[2]); TextDrawShowForPlayer(playerid, TD_BankExit[3]); PlayerTextDrawShow(playerid, TDP_Bank[playerid]); PlayerTextDrawSetString(playerid, TDP_Bank[playerid], "Меню банка"); SelectTextDrawEx(playerid, 0xC45C0BAA); } else { ShowPlayerDialog(playerid, D_BANK, DIALOG_STYLE_LIST, fmt_str, "\ {"#cSV"}1. {FFFFFF}Операции со счетом\n\ {"#cSV"}2. {FFFFFF}Пополнить баланс\n\ {"#cSV"}3. {FFFFFF}Снять деньги со счета\n\ {"#cSV"}4. {FFFFFF}Оплата недвижимости\n\ {"#cSV"}5. {FFFFFF}Пополнить мобильный счет\n\ {"#cSV"}6. {FFFFFF}Благотворительность\n\ {"#cSV"}7. {FFFFFF}Перевод на другой счет\n\ {"#cSV"}8. {FFFFFF}Биз-бюджет", "Выбрать", "Отмена"); } } case 2: { if(Setting[playerid][3] != 1) { SendMes(playerid, 0xF2F530FF, "[Банк]: Управление банковским счетом {79CB64}№%d", b_id); for(new i; i < 19; i++) TextDrawShowForPlayer(playerid, TD_Bank[i]); TextDrawShowForPlayer(playerid, TD_BankExit[0]); TextDrawShowForPlayer(playerid, TD_BankExit[1]); PlayerTextDrawShow(playerid, TDP_Bank[playerid]); PlayerTextDrawSetString(playerid, TDP_Bank[playerid], "Банкомат"); SelectTextDrawEx(playerid, 0xC45C0BAA); } else { ShowPlayerDialog(playerid, D_BANK, DIALOG_STYLE_LIST, fmt_str, "\ {"#cSV"}1. {FFFFFF}Операции со счетом\n\ {"#cSV"}2. {FFFFFF}Пополнить баланс\n\ {"#cSV"}3. {FFFFFF}Снять деньги со счета\n\ {"#cSV"}4. {FFFFFF}Оплата недвижимости\n\ {"#cSV"}5. {FFFFFF}Пополнить мобильный счет\n\ {"#cSV"}6. {FFFFFF}Благотворительность", "Выбрать", "Отмена"); } } } DeletePVar(playerid, "bank_type"); } Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Lefist 20 Опубликовано 4 августа, 2019 При создании счета в банке в консоль и логи выводится сообщение об ошибке: [ERROR] CMySQLQuery::Execute[] - (error #1054) Unknown column 'ip' in 'field list' (Query: "INSERT INTO bank (name, ip, data, cash) values ('Nick_Name', '127.0.0.1', NOW(), '250')") Нам пишет, что не хватает поля "ip". Заходим в базу данных и убеждаемся, что поля "ip" у нас нет: Добавляем отсутствующее поле "ip": Проверяем на работоспособность: В базу данных записалось, проверим на сервере: На сервере счет высветился, все работает. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
kostik123123 0 Опубликовано 4 августа, 2019 15 минут назад, Lefist сказал: При создании счета в банке в консоль и логи выводится сообщение об ошибке: [ERROR] CMySQLQuery::Execute[] - (error #1054) Unknown column 'ip' in 'field list' (Query: "INSERT INTO bank (name, ip, data, cash) values ('Nick_Name', '127.0.0.1', NOW(), '250')") Нам пишет, что не хватает поля "ip". Заходим в базу данных и убеждаемся, что поля "ip" у нас нет: Добавляем отсутствующее поле "ip": Проверяем на работоспособность: В базу данных записалось, проверим на сервере: На сервере счет высветился, все работает. Если не ошибаюсь то вместо IP 127.0.0.1 , что писать надо? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты