PDA

Просмотр полной версии : [Вопрос] По поводу бана.



Skyline
20.03.2017, 11:41
Когда банишь игрока, не создается в БД аккаунт..

static const auto_query_string[] =
"INSERT INTO `banlist` (`Name`, `Reason`, `Admin`, `BanDate`, `UnbanUNIXTime`) "\
"VALUES ('%s', '%s', '%s', '%s', '%d')";

new query_string[sizeof(auto_query_string) - 10 + (MAX_PLAYER_NAME*2) + 30 + 20 + 11 + 1],
date_string[20+1],
year,
month,
day,
hour,
minute,
second;

getdate(year, month, day);
gettime(hour, minute, second);
format(date_string, sizeof(date_string), "%02d.%02d.%d, %02d:%02d:%02d", day, month, year, hour, minute, second);

format(query_string, sizeof(query_string), auto_query_string, pInfo[id][pName], reason, pInfo[playerid][pName], date_string, unbanunixtime);
mysql_tquery(mysql_connect_ID, string, "", "");

DeimoS
20.03.2017, 12:12
А если mysql_log показать?

Skyline
20.03.2017, 12:51
При бане ошибка.


[plugins/mysql] error #1064 while executing query "Ты был забанен Гл. Администратором Kent_No на 1 день. Причина: тест ": You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '?? ??? ??????? ??. ??????????????? Kent_No ?? 1 ????. ???????: ????' at line 1

DeimoS
20.03.2017, 13:02
format(query_string, sizeof(query_string), auto_query_string, pInfo[id][pName], reason, pInfo[playerid][pName], date_string, unbanunixtime);
Внимательно изучи эти 2 строки

mysql_tquery(mysql_connect_ID, string, "", "");
Проблема кроется в них ;)

Skyline
20.03.2017, 13:05
format(query_string, sizeof(query_string), auto_query_string, pInfo[id][pName], reason, pInfo[playerid][pName], date_string, unbanunixtime);
Внимательно изучи эти 2 строки

mysql_tquery(mysql_connect_ID, string, "", "");
Проблема кроется в них ;)

Айй, да, упустил) Спасибо)

DeimoS
20.03.2017, 13:12
Вот один из минусов использования глобальных массивов для хранения строк :)
Проблема, как я понимаю, решена.
Закрыто.