Peršokti į turinį

Mysql R39-4


Recommended Posts

Sveiki iškilo problema kai paleidžiu serveri leidžia registruotis bet ir tuo tarpu mane išmeta kame problema?

 

MySQL LOG:

[23:59:02] [DEBUG] CMySQLConnection::Connect - establishing connection to database...
[23:59:02] [DEBUG] CMySQLConnection::Connect - establishing connection to database...
[23:59:02] [DEBUG] CMySQLConnection::Connect - establishing connection to database...
[23:59:02] [DEBUG] CMySQLConnection::Connect - connection was successful
[23:59:02] [DEBUG] CMySQLConnection::Connect - auto-reconnect has been enabled
[23:59:02] [DEBUG] CMySQLConnection::Connect - connection was successful
[23:59:02] [DEBUG] CMySQLConnection::Connect - auto-reconnect has been enabled
[23:59:02] [DEBUG] CMySQLConnection::Connect - connection was successful
[23:59:02] [DEBUG] CMySQLConnection::Connect - auto-reconnect has been enabled
[23:59:31] [DEBUG] orm_create - table: "zaidejai", connectionHandle: 1
[23:59:31] [DEBUG] COrm::Create - creating new orm object..
[23:59:31] [DEBUG] COrm::Create - orm object created (id: 1)
[23:59:31] [DEBUG] orm_addvar_int - orm_id: 1, var: 02816E90, varname: "ID"
[23:59:31] [DEBUG] orm_addvar_string - orm_id: 1, var: 02816E94, var_maxlen: 24, varname: "Vardas"
[23:59:31] [DEBUG] orm_addvar_string - orm_id: 1, var: 02816EF8, var_maxlen: 99, varname: "Slaptazodis"
[23:59:31] [DEBUG] orm_addvar_int - orm_id: 1, var: 02817094, varname: "XP"
[23:59:31] [DEBUG] orm_addvar_int - orm_id: 1, var: 02817090, varname: "Pinigai"
[23:59:31] [DEBUG] orm_addvar_float - orm_id: 1, var: 02817084, varname: "SpawnX"
[23:59:31] [DEBUG] orm_addvar_float - orm_id: 1, var: 02817088, varname: "SpawnY"
[23:59:31] [DEBUG] orm_addvar_float - orm_id: 1, var: 0281708C, varname: "SpawnZ"
[23:59:31] [DEBUG] orm_setkey - orm_id: 1, varname: "Vardas"
[23:59:31] [DEBUG] orm_select - orm_id: 1, callback: "ZaidejasPrisijunge", format: "i"
[23:59:31] [DEBUG] CMySQLQuery::Execute[ZaidejasPrisijunge] - starting query execution
[23:59:31] [DEBUG] CMySQLQuery::Execute[ZaidejasPrisijunge] - query was successfully executed within 29.105 milliseconds
[23:59:31] [DEBUG] CMySQLResult::CMySQLResult() - constructor called
[23:59:31] [DEBUG] Calling callback "ZaidejasPrisijunge"..
[23:59:31] [DEBUG] orm_setkey - orm_id: 1, varname: "Vardas"
[23:59:31] [ERROR] COrm::SetVariableAsKey - variable is already set as key
[23:59:31] [DEBUG] orm_errno - orm_id: 1
[23:59:31] [DEBUG] orm_errno - orm_id: 1
[23:59:31] [DEBUG] CMySQLResult::~CMySQLResult() - deconstructor called
[23:59:33] [DEBUG] orm_insert - orm_id: 1, callback: "Uzsiregistruoja", format: "i"
[23:59:33] [DEBUG] CMySQLQuery::Execute[Uzsiregistruoja] - starting query execution
[23:59:33] [DEBUG] CMySQLQuery::Execute[Uzsiregistruoja] - query was successfully executed within 28.511 milliseconds
[23:59:33] [DEBUG] CMySQLResult::CMySQLResult() - constructor called
[23:59:33] [DEBUG] Calling callback "Uzsiregistruoja"..
[23:59:33] [DEBUG] orm_errno - orm_id: 1
[23:59:33] [DEBUG] orm_errno - orm_id: 1
[23:59:33] [DEBUG] CMySQLResult::~CMySQLResult() - deconstructor called

Kur gali but klaida maždaug: 

	case 2:
	{
	    format(pInfo[playerid][Slaptazodis], 99, "%s", inputtext);
	    pInfo[playerid][Pinigai] = 1000;
	    pInfo[playerid][Patirtis]= 10;
	    SpawnPlayer(playerid);
	    orm_insert(pInfo[playerid][ORMID], "Uzsiregistruoja", "i", playerid);
		return 1;
	}

stock Saugojimas(playerid)
{
 GetPlayerPos(playerid, pInfo[playerid][SpawnX],pInfo[playerid][SpawnY],pInfo[playerid][SpawnZ]);
 pInfo[playerid][Pinigai] = GetPlayerMoney(playerid);
 pInfo[playerid][Patirtis] = GetPlayerScore(playerid);
 orm_update(pInfo[playerid][ORMID]);
 return 1;
}
forward Uzsiregistruoja(playerid);
public Uzsiregistruoja (playerid)
	{
	if(orm_errno(pInfo[playerid][ORMID]) == ERROR_OK) return printf("%s Užsiregistravo", pInfo[playerid][Vardas]);
	if(orm_errno(pInfo[playerid][ORMID]) == ERROR_NO_DATA) return print("ERROR: Žaidejui nepavyko užsiregistruoti"), Kick(playerid);
	return 1;
	}


Registruojantis nerodo vardo o statusus išsaugo:

 

tik pos dar ne kažkodėl

 

2c02621a400c002b072f3070feace292756.png

Redaguota , nario Jothearch
Nuoroda į komentarą
Dalintis per kitą puslapį

Vardo neišsaugo? O kur nors į ORM kintąmąjį "Vardas" įrašai vardą?

 

 

Manau kad išmeta ne šitas kick. O galbūt tau rašo tą žinutę?

if(orm_errno(pInfo[playerid][ORMID]) == ERROR_NO_DATA) return print("ERROR: Žaidejui nepavyko užsiregistruoti"), Kick(playerid);

Nepamiršk kad tai yra lygiagreti užklausa. Tai reiškia kad kol bus vykdoma orm_insert serveris tęs įprasta vykdymą ir kai užklausa baigs darbą, tada iškvies "Uzsiregistruoja" funkciją. Nors tas tarpas ir labai trumpas(tokiai užklausai kelios MS), gali būti kad kažkur kitur tavo kode yra Kick dėl kurio išmeta.

Nuoroda į komentarą
Dalintis per kitą puslapį

(redaguota)

Vardo neišsaugo? O kur nors į ORM kintąmąjį "Vardas" įrašai vardą?

 

 

Manau kad išmeta ne šitas kick. O galbūt tau rašo tą žinutę?

if(orm_errno(pInfo[playerid][ORMID]) == ERROR_NO_DATA) return print("ERROR: Žaidejui nepavyko užsiregistruoti"), Kick(playerid);

Nepamiršk kad tai yra lygiagreti užklausa. Tai reiškia kad kol bus vykdoma orm_insert serveris tęs įprasta vykdymą ir kai užklausa baigs darbą, tada iškvies "Uzsiregistruoja" funkciją. Nors tas tarpas ir labai trumpas(tokiai užklausai kelios MS), gali būti kad kažkur kitur tavo kode yra Kick dėl kurio išmeta.

Žaidėjo DB: gal čia kažkas

 

 

enum PlayerDB {

ORM:ORMID,
ID,
Vardas[MAX_PLAYER_NAME+1],
Slaptazodis[99+0],
Float:SpawnX,
Float:SpawnY,
Float:SpawnZ,
Pinigai,
Patirtis
}
 

 

if(orm_errno(pInfo[playerid][ORMID]) == ERROR_NO_DATA) return print("ERROR: Žaidejui nepavyko užsiregistruoti"), Kick(playerid);

 

 

Iškviečia ta komanda ir meta ERROR: Žaidejui nepavyko užsiregistruoti

 

Pagal pamoka dariausi bet vat ir ne kažka :/

Žaidėjas prisijungia callback

 

 

forward ZaidejasPrisijunge(playerid);

public ZaidejasPrisijunge(playerid)
{
orm_setkey(pInfo[playerid][ORMID], "Vardas");
if(orm_errno(pInfo[playerid][ORMID]) == ERROR_OK) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_PASSWORD, "Prisijungimas", "Įveskite Slaptažodi norėdami prisijungti", "Vykdyti", "Išeiti");
if(orm_errno(pInfo[playerid][ORMID]) == ERROR_NO_DATA) return ShowPlayerDialog(playerid, 2, DIALOG_STYLE_PASSWORD, "Registracija", "Įveskite Slaptažodi norėdami prisijungti", "Vykdyti", "Išeiti");
return 1;
}

 

Daugiau KICK niekur nėra, nes rašiau tik šioje eilutėja

Redaguota , nario Jothearch
Nuoroda į komentarą
Dalintis per kitą puslapį

Prisijungti prie diskusijos

Palikti atsakymą galite iš karto, o užsiregistruoti vėliau. Jeigu jau turite paskyrą mūsų forume, Prisijunkite.

Svečias
Atsakyti Å¡ioje temoje...

×   Ä®klijuotas tekstas turi teksto formatavimą.   PaÅ¡alinti teksto formatavimą

  Galimi tik 75 veidukai.

×   Nuoroda buvo automatiÅ¡kai įterpta.   Ä®terpti nuorodą paprastai

×   JÅ«sų ankstesnis praneÅ¡imas buvo atkurtas.   IÅ¡valyti redaktorių

×   JÅ«s negalite įkelti nuotraukas tiesiogiai.Ä®kelkite arba įdėkite nuotraukas iÅ¡ URL.

  • Å iame puslapyje narÅ¡o:   0 nariai

    Nėra registruotų narių peržiūrinčių šį forumą.


×
×
  • Sukurti naują...