26.06.2012, 19:18
Собственно такие дела. Что то с сохранением аккаунтов в таблицу. Ид начинается не с нуля, а либо с 1, или с 5, вообщем как вздумается. Так же, не записывает координаты, хотя если зайти на сервер не перезапуская его, то игрок появится где нужно. Пароль тоже сохраняет через раз, хотя при авторизации все номарльно (человек вводит свой пароль и его авторизует). Произошло все после того, как сделал сохранение позиций игрока при выходе. Ошибок и варнингов соответственно нет, код пересматривал 100 раз, что то убирал, редактировал, нихера. Вот лог из дебага:
Сток сейва:
PHP код:
[23:24:01] >> mysql_query( Connection handle: 1 )
[23:24:01] CMySQLHandler::Query(SELECT * FROM `players` WHERE `name` = 'Tester_Mckenzy' LIMIT 1) - Successfully executed.
[23:24:01] >> mysql_store_result( Connection handle: 1 )
[23:24:01] CMySQLHandler::StoreResult() - Result was stored.
[23:24:01] >> mysql_fetch_row_format( Connection handle: 1 )
[23:24:04] >> mysql_query( Connection handle: 1 )
[23:24:04] CMySQLHandler::Query(INSERT INTO `players` (`Name`,`Pass`) VALUES ('Tester_Mckenzy','123qwe')) - Successfully executed.
[23:24:05] >> mysql_query( Connection handle: 1 )
[23:24:05] CMySQLHandler::Query(UPDATE players SET Name = 'Tester_Mckenzy',Pass = '',Sex = 1,Money = 0,Reg = 0,PosX = 0.000000,PosY = 0.000000,PosZ = 0.000000WHERE ID=0) - Successfully executed.
[23:24:06] >> mysql_query( Connection handle: 1 )
[23:24:06] CMySQLHandler::Query(UPDATE players SET Name = 'Tester_Mckenzy',Pass = '',Sex = 1,Money = 0,Reg = 1,PosX = 0.000000,PosY = 0.000000,PosZ = 0.000000WHERE ID=0) - Successfully executed.
[23:24:19] >> mysql_query( Connection handle: 1 )
[23:24:19] CMySQLHandler::Query(UPDATE players SET Name = 'Tester_Mckenzy',Pass = '',Sex = 1,Money = 0,Reg = 1,PosX = 2778.801269,PosY = 1264.778930,PosZ = 10.750000WHERE ID=0) - Successfully executed.
[23:24:25] >> mysql_close( Connection handle: 1 )
[23:24:25] CMySQLHandler::~CMySQLHandler() - deconstructor called.
[23:24:25] CMySQLHandler::FreeResult() - Result was successfully free'd.
[23:24:25] CMySQLHandler::Disconnect() - Connection was closed.
PHP код:
stock SaveAccount(playerid)
{
GetPlayerPos(playerid, PlayerInfo[playerid][pPos][0], PlayerInfo[playerid][pPos][1], PlayerInfo[playerid][pPos][2]);
format(queryString, sizeof(queryString), "UPDATE players SET \
Name = '%s',\
Pass = '%s',\
Sex = %d,\
Money = %d,\
Reg = %d,\
PosX = %f,\
PosY = %f,\
PosZ = %f,\
WHERE ID=%d",
PlayerInfo[playerid][pName],
PlayerInfo[playerid][pPass],
PlayerInfo[playerid][pSex],
PlayerInfo[playerid][pMoney],
PlayerInfo[playerid][pReg],
PlayerInfo[playerid][pPos][0],
PlayerInfo[playerid][pPos][1],
PlayerInfo[playerid][pPos][2],
PlayerInfo[playerid][pID]);
mysql_query(queryString);
return 1;
}