PDA

Просмотр полной версии : [Вопрос] Имя игрока не сохраняется в таблицу



Elaid
19.10.2014, 04:39
Приветствую, тебя мой спаситель. У меня такая вот проблемка. Не передается имя игрока при регистрации в стоблец в БД. То есть после регистрации остается пусто место, а пароль и т.д.

Вот что у меня имеется:

#define Name(%0) PlayerInfo[%0][Name]
///
enum pInfo
{
Name[MAX_PLAYER_NAME],
..
};
new PlayerInfo[MAX_PLAYERS][pInfo];
///
new str[128];
format(str, sizeof(str), "INSERT INTO `Accounts` (`Name`, `Key`) VALUES ('%s', '%s')", Name, password);
mysql_function_query(mysql_variable, str, false, "RegisterCallback","d", p);
return 1;

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

Имя не пишется (пусто), а пароли и прочее все заносится.

#ball
19.10.2014, 11:15
enum pInfo
{
Name[MAX_PLAYER_NAME],
..
};
new PlayerInfo[MAX_PLAYERS][pInfo];
///
GetPlayerName(playerid, PlayerInfo[playerid][Name], MAX_PLAYER_NAME);
new str[128];
format(str, sizeof(str), "INSERT INTO `Accounts` (`Name`, `Key`) VALUES ('%s', '%s')", PlayerInfo[playerid][Name], password);
mysql_function_query(mysql_variable, str, false, "RegisterCallback","d", p);
return 1;

Rasta
19.10.2014, 17:09
#define PName(%0) PlayerInfo[%0][Name]
///
enum pInfo
{
Name[MAX_PLAYER_NAME],
..
};
new PlayerInfo[MAX_PLAYERS][pInfo];
///
new str[59 - 2 + 24 - 2 + 20];
format(str, sizeof(str), "INSERT INTO `Accounts` (`Name`, `Key`) VALUES ('%s', '%s')", PName(playerid), password);
mysql_function_query(mysql_variable, str, false, "RegisterCallback","d", p);
return 1;

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

Если нет определения имени, то вставь перед new str[59 - 2 + 24 - 2 + 20];

GetPlayerName(playerid, PlayerInfo[playerid][Name], MAX_PLAYER_NAME);