MYSQL REG LOG

Amil_Pawno Započeo Amil_Pawno
pre 4 godine
1,008
pregleda
9
postova
Ova tema je zaključana. Samo moderatori i administratori mogu odgovarati.
Amil_Pawno
Street Runner
pre 4 godine
Problem(error/warning): Napravio sam REG LOG pomocu tutorijala ovde na mysql u sekciju MySQL R2 REG LOG I POKAZUJEMI ERRORE
Deo skripte:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
switch(dialogid)
{
    case d_login:
    {
        if(!response) return Kick(playerid);
     
        new buf, name;
        SHA256_PassHash(inputtext, PlayerInfo, buf, 65);
     
        if(strcmp(buf, PlayerInfo) == 0)
        {
GetPlayerName(playerid, name, sizeof(name));
            mysql_format(handle, query, sizeof(query), "SELECT * FROM players WHERE name = `%e` LIMIT 1", name);
            mysql_tquery(handle, query, "OnAccountLoad", "i", playerid);
}
else
{
    ShowPlayerDialog(playerid, d_login, DIALOG_STYLE_PASSWORD, "Prijava", "Lozinka koju ste uneli nije ispravna, pokusajte ponovo:", "Dalje", "Izlaz");
}
}
case d_register:
{
    if(!response) return Kick(playerid);
 
    if(strlen(inputtext) < 6 || strlen(inputtext) > 20) // ako je lozinka kraca od 6 i duza od 20 karaktera vraca dialog
    {
        ShowPlayerDialog(playerid, d_register, DIALOG_STYLE_INPUT, "Registracija", "Vas racun nije pronadjen, molimo vas upisite lozinku da se registrujete:", "Dalje", "Izlaz");
        return true;
}

for (new i = 0; i < 10; i++) {
    PlayerInfo = random(100) + 50;
}

PlayerInfo = 0;
SHA256_PassHash(inputtext, PlayerInfo, PlayerInfo, 65);

// sada unosimo u bazu podatke igraca
new query, name;
GetPlayerName(playerid, name, sizeof(name));

mysql_format(handle, query, sizeof(query), "INSERT INTO players SET \
                                                name=`%e`,\
                                                password=`%e`,\
                                                salt=`%e`,\
                                                regdate=NOW()", name, PlayerInfo, PlayerInfo);
                                             
            mysql_tquery(handle, query, "OnPlayerRegister", "d", playerid);
}
}
return true;
}

Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log):
C:\Users\namik\Desktop\MySQL Tokyo\gamemodes\tokyo-rp.pwn(248) : error 017: undefined symbol "query"
C:\Users\namik\Desktop\MySQL Tokyo\gamemodes\tokyo-rp.pwn(248) : error 017: undefined symbol "query"
C:\Users\namik\Desktop\MySQL Tokyo\gamemodes\tokyo-rp.pwn(248) : error 029: invalid expression, assumed zero
C:\Users\namik\Desktop\MySQL Tokyo\gamemodes\tokyo-rp.pwn(248) : fatal error 107: too many error messages on one line
Bryan123
Enforcer
pre 4 godine
Fali ti query.. Dodaj ga iznad linije gde ti baca error ili ga napravi kao globalnu variablu, a ostale pobrisi.
Taylor Script
Made Man
pre 4 godine
Iznad selecta stavi new query;
Sage
Enforcer
pre 4 godine
Taylor Morelli wrote on July 27, 2021, 7:51 pm:
Iznad selecta stavi new query;
new query[50 + MAX_PLAYER_NAME];

Čistije/Preglednije
Taylor Script
Made Man
pre 4 godine
Sage wrote on July 28, 2021, 1:26 am:
new query[50 + MAX_PLAYER_NAME];

Čistije/Preglednije
Brze ce onda odradit new query; nego da sabire dva broja
dtutankamon
Hustler
pre 4 godine
Taylor Morelli wrote on July 28, 2021, 2:50 pm:
Brze ce onda odradit new query; nego da sabire dva broja

Zapravo ce biti isto, svaki staticni niz vec ima odredjenu vrednost koju ce koristiti tokom runtime-a servera, jer kada kompajlujes skriptu ta vrednost je vec sracunata i nema nikakvog uticaja na tvoj server niti ikakav kontakt sa brzinom sto se tice dodele velicine i gore navedenih sabiranja velicina.
Znaci da li ti napisao query ili query[50 + MAX_PLAYER_NAME] dodje ti da je to isti kurac razlicito pakovanje.

To je eto cisto radi preglednosti i uopste nije obavezno.  😐
Taylor Script
Made Man
pre 4 godine
tutankamon wrote on July 28, 2021, 3:58 pm:
Zapravo ce biti isto, svaki staticni niz vec ima odredjenu vrednost koju ce koristiti tokom runtime-a servera, jer kada kompajlujes skriptu ta vrednost je vec sracunata i nema nikakvog uticaja na tvoj server niti ikakav kontakt sa brzinom sto se tice dodele velicine i gore navedenih sabiranja velicina.
Znaci da li ti napisao query ili query[50 + MAX_PLAYER_NAME] dodje ti da je to isti kurac razlicito pakovanje.

To je eto cisto radi preglednosti i uopste nije obavezno.  😐
Odgovor sam dao cisto jer me nervira bezvezno ispravljanje samo da bi se ispravilo, isti mu je kurac string sa odp 100 char ako ce vec gledat svako slovo neka ide na counter da izbroji karaktere. Po mojoj logici ako bi se trazila ta brzina opet je lakse string odđa postaviti nego sabirati dva broja i uzimati vrijednost iz mpn samo radi neke gluposti. Sage nemoj se ti nac uvrijedjen svako ima pravo na misljenje
Sage
Enforcer
pre 4 godine
Taylor Morelli wrote on July 28, 2021, 7:00 pm:
Odgovor sam dao cisto jer me nervira bezvezno ispravljanje samo da bi se ispravilo, isti mu je kurac string sa odp 100 char ako ce vec gledat svako slovo neka ide na counter da izbroji karaktere. Po mojoj logici ako bi se trazila ta brzina opet je lakse string odđa postaviti nego sabirati dva broja i uzimati vrijednost iz mpn samo radi neke gluposti. Sage nemoj se ti nac uvrijedjen svako ima pravo na misljenje

Ispravljanje i nije baš, savet je.
Naravno stil ti može biti veoma neuredan i nepravilan, ovaj forum je pun Yandere Dev likova.

EDIT: I ja nisam mislio samo za ovo nego genarlno da zna da može i tako, ako na primer ima string dužine 343 i neke kurčeve da može
new buffer[343 + MAX_PLAYER_NAME + 2 + 4 + 8 + 1];
zlatkobeee
Wheel Man
pre 4 godine
Sage wrote on July 28, 2021, 8:41 pm:
Ispravljanje i nije baš, savet je.
Naravno stil ti može biti veoma neuredan i nepravilan, ovaj forum je pun Yandere Dev likova.

EDIT: I ja nisam mislio samo za ovo nego genarlno da zna da može i tako, ako na primer ima string dužine 343 i neke kurčeve da može
new buffer[343 + MAX_PLAYER_NAME + 2 + 4 + 8 + 1];

aLi OvO nJeGoVo jE bRzE zAsTo Bi sAbIrAo kAdA mOzE sVe OdMaH dA iZrAcUnA bIcE mU sPoR mOd oN jE iPaK bOg sKrIpTeR  🤐

Morate biti prijavljeni da biste odgovorili na ovu temu.

Prijava