format(qString, sizeof(qString), "INSERT INTO `accounts` (`name`, `password`, `reg ip`, `reg date`, `sex`, `skin`) VALUES ('%s', '%s', '%s', '%s', %d, %d)", player_info[playerid][NAME], player_info[playerid][PASSWORD], ip, str, player_info[playerid][SEX], player_info[playerid][SKIN]); mysql_tquery(dbHandle, qString); SpawnPlayer(playerid); format(qString, sizeof(qString), "Âàø ïàðîëü %s, íèêîìó åãî íå ñîîáùàéòå", player_info[playerid][PASSWORD]); SCM(playerid, -1, qString); cache_get_value_name_int(0, "id", player_info[playerid][ID]); cache_get_value_name_int(0, "lvl", player_info[playerid][LVL]); cache_get_value_name_int(0, "exp", player_info[playerid][EXP]); cache_get_value_name_int(0, "skin", player_info[playerid][SKIN]); cache_get_value_name_int(0, "money", player_info[playerid][MONEY]);
Страница 1 из 1
[ Pawn ]
Не записыаются данные в массив из бд
#1
Отправлено 10 мая 2022 - 15:32

Сделал систему регистрации - не сохраняются данные в enum, хотя запись в бд создается. А при авторизации все норм происходит. Как решить
#2
Отправлено 11 мая 2022 - 11:19

Потому что ты должен отдельный запрос создавать, чтоб сработал cache_get_value_name_int, но он тут не нужен.
Задавай те же значения при регистрации напрямую:
Задавай те же значения при регистрации напрямую:
player_info[playerid][ID] = /**/; player_info[playerid][LVL] = /**/; player_info[playerid][EXP] = /**/; player_info[playerid][MONEY] = /**/;
#4
Отправлено 13 мая 2022 - 08:59

Купидон (12 мая 2022 - 23:04) писал:
Ну и как по-твоему я должен записать в ид значение из бд
format(qString, sizeof(qString), "I'NSERT INTO `accounts` (`name`, `password`, `reg ip`, `reg date`, `sex`, `skin`) VALUES ('%s', '%s', '%s', '%s', %d, %d)", player_info[playerid][NAME], player_info[playerid][PASSWORD], ip, str, player_info[playerid][SEX], player_info[playerid][SKIN]); mysql_tquery(dbHandle, qString, "@MySQL__NewPlayerAccountID", "i", playerid);
@MySQL__NewPlayerAccountID(playerid; @MySQL__NewPlayerAccountID(playerid) { player_info[playerid][ID] = cache_insert_id(); }
#6
Отправлено 13 мая 2022 - 13:32

Купидон (13 мая 2022 - 12:22) писал:
Почему не работает cache_get_value_name_int в этом случае? В авторизации тоже самое прописал и все работает
Потому что надо открыть мануалы по MySQL и изучить их, а не делать "как в авторизации".
Чтоб плагин сформировал кэш с определёнными данными, нужно отправить соответствующий запрос в БД на выборку нужных данных (SELECT-запрос). Ты же пытаешься работать не только с данными, которых нет в кэше, но и с кэшем, которого не существует даже.
#7
Отправлено 14 мая 2022 - 18:59

DeimoS (13 мая 2022 - 08:59) писал:
Нажмите сюда, чтобы прочитать это сообщение. [Показать]
Выводит -1 в этом случае, помоги решить
DeimoS (13 мая 2022 - 13:32) писал:
Нажмите сюда, чтобы прочитать это сообщение. [Показать]
У меня много систем сделанных по примеру регистрации и все работает исправно, кроме самой регистрации...
#8
Отправлено 14 мая 2022 - 19:12

Купидон (14 мая 2022 - 18:59) писал:
Выводит -1 в этом случае, помоги решить
format(qString, sizeof(qString), "INSERT INTO `accounts` (`name`, `password`, `reg ip`, `reg date`, `sex`, `skin`) VALUES ('%s', '%s', '%s', '%s', %d, %d)", player_info[playerid][NAME], player_info[playerid][PASSWORD], ip, str, player_info[playerid][SEX], player_info[playerid][SKIN]); mysql_tquery(dbHandle, qString, "@MySQL__NewPlayerAccountID", "i", playerid); @MySQL__NewPlayerAccountID(playerid; @MySQL__NewPlayerAccountID(playerid) { player_info[playerid][ID] = cache_insert_id(); }
Купидон (14 мая 2022 - 18:59) писал:
У меня много систем сделанных по примеру регистрации и все работает исправно, кроме самой регистрации...
Рад за тебя. К чему ты об этом пишешь?
#10
Отправлено 15 мая 2022 - 09:53

Купидон (14 мая 2022 - 21:10) писал:
Ну раз там работает, значит и тут должно.
То есть, то, что конкретно в этом случае у тебя ничего не сработало, тебя ни на какие мысли не натолкнуло?

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