Перейти к содержанию
Авторизация  
#meow

Не сохраняет Email, Пол, Дату Регистрации

Рекомендуемые сообщения

#meow

Доброго времени суток, у меня в БД не сохраняет Email, Пол, Дату Регистрации

 

[spoiler=stock save account]stock save_account(playerid)

{
new query[128];
format(query, sizeof(query), "UPDATE `accounts` SET \
`email` = '%s', `sex` = '%d', `admin` = '%d' WHERE `id` = '%d' LIMIT 1",
player_info[playerid][EMAIL],
player_info[playerid][SEX],
player_info[playerid][ADMIN],
player_info[playerid][ID]);
mysql_function_query(dbHandle, query, false, "", "");
}

 

 

 

[spoiler=forward с логином игрока]

forward player_login(playerid);
public player_login(playerid)
{
new rows[2], temp[128];
cache_get_data(rows[0], rows[1]);
if(rows[0])
{
cache_get_field_content(0, "id", temp), player_info[playerid][ID] = strval(temp);
cache_get_field_content(0, "email", temp), strmid(player_info[playerid][EMAIL], temp, 0, strlen(temp), 32);
cache_get_field_content(0, "sex", temp), player_info[playerid][SEX] = strval(temp);
cache_get_field_content(0, "admin", temp), player_info[playerid][ADMIN] = strval(temp);
}
}

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
16Shadows

Ошибок в логах нет?

Может забыли добавить в моде запрос, вызывающий player_login?

Покажите, на всякий случай, запрос, который вызывает player_login

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
#meow

@16Shadows,

[spoiler=Запрос]

new query[128], temp[24];mysql_real_escape_string(inputtext, temp);
new ip[16], data[16];
format(data, sizeof(data), "%s", data, ("%dd.%mm.%yyyy", gettime()));
GetPlayerIp(playerid, ip, sizeof(ip));
format(query, sizeof(query), "INSERT INTO `accounts` (`login`,`password`, `regdata`, `regip`) VALUES ('%s','%s', '%s', '%s')", playername(playerid), temp, data, ip);
mysql_function_query(dbHandle, query, false, "", "");
format(query, sizeof(query), "SELECT * FROM `accounts` WHERE `login` = '%s' AND `password` = '%s' LIMIT 1", playername(playerid), temp);
mysql_function_query(dbHandle, query, true, "player_login", "i", playerid

);

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
16Shadows

Можете попробовать первый запрос (INSERT) выполнять не

mysql_function_query(dbHandle, query, false, "", "");

А через

mysql_query(dbHandle, query, false);

Хотя, если у Вас в БД не появляются данные, то это не поможет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
#meow

@16Shadows, не помогло...

Ник записывается, пароль записывается и ip тоже записывается в БД, а Email, Пол, Дату Регистрации - нет.

Изменено пользователем #moon

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
16Shadows

Ну конкретно в данном запросе INSERT Вы не вставляете данные о Email и Поле.

Для даты можете использовать функцию mysql CURDATE(), но там формат гггг-мм-дд

Или замените

format(data, sizeof(data), "%s", data, ("%dd.%mm.%yyyy", gettime()));
На

new year,month,day;
getdate(year, month, day);
format(data, sizeof(data), "%02d%02d%04d", day, month, year);
  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Гость
Эта тема закрыта для публикации ответов.
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

Мы разместили cookie-файлы на ваше устройство, чтобы помочь сделать этот сайт лучше. Вы можете изменить свои настройки cookie-файлов, или продолжить без изменения настроек.