MySQL place

Šiame forume rašomi vartotojų klausimai/problemos su kuriomis jie susidūrė kuriant pluginus.
User avatar
psychical
Viršininkas
Posts: 2094
Joined: 2011 Mar 12 22:19
Skype: tautvydas11
Location: Linksmakalnis
Contact:

Re: MySQL place

Post by psychical »

Srr, net ten kur daviau reikejo irasyti pozicija, kad paimtu nick, dabar irasius nika duos pozicija:

Code: Select all

SET @rownum := 0;SELECT * FROM (SELECT @rownum := @rownum+1 AS POSITION, Kills, SteamID FROM `lentele` ORDER BY `Kills` DESC) AS `lentele` WHERE `SteamID` = 'zaidejo_steamid';

addinol
Jau po truputį tampa savu
Posts: 144
Joined: 2010 Sep 05 15:20
Skype: kasparas94

Re: MySQL place

Post by addinol »

O kaip pilnai šita funkcija turėtų atrodyti ? t.y. ne tik SQL sintaksė bet ir iš pawn pusės ? :)

User avatar
psychical
Viršininkas
Posts: 2094
Joined: 2011 Mar 12 22:19
Skype: tautvydas11
Location: Linksmakalnis
Contact:

Re: MySQL place

Post by psychical »

addinol wrote:O kaip pilnai šita funkcija turėtų atrodyti ? t.y. ne tik SQL sintaksė bet ir iš pawn pusės ? :)
teks palaukti, truputi, ne taip lengva parasyti, jei spesiu parasysiu, kol kas nors neparase ;D

-- 2011 Spa 15 23:08 --

Code: Select all

new pozicija[33], isviso; SaveTimeMysql(id){    new Handle:Query = SQL_PrepareQuery(SqlConnection, "SELECT * FROM `lentele`");        if(SQL_Execute(Query))        isviso = SQL_NumResults(Query);            uzkraunam(id);    set_task(0.1, "to_chat", id);   } uzkraunam(id){    static szQuery[ 128 ], iData[ 1 ];     SQL_PrepareQuery(SqlConnection, "SET @rownum := 0");    formatex(szQuery, 127, "SELECT * FROM (SELECT @rownum := @rownum+1 AS POSITION, Kills, SteamID FROM `lentele` ORDER BY `Kills` DESC) AS `lentele` WHERE `SteamID` = '%s'", SteamID);        iData[ 0 ] = id;    SQL_ThreadQuery( g_hTuple, "paimam", szQuery, iData, 1 );} public paimam(iFailState, Handle:hQuery, szError[ ], iError, iData[ ], iDataSize, Float:fQueueTime) {     if(iFailState == TQUERY_CONNECT_FAILED || iFailState == TQUERY_QUERY_FAILED) { log_amx("%s", szError); return; }     else     {         new id = iData[ 0 ];                new ColPos = SQL_FieldNameToNum(hQuery, "POSITION")                 while (SQL_MoreResults(hQuery))        {            pozicija[id] = SQL_ReadResult(hQuery, ColPos);              SQL_NextRow(hQuery)        }    } } public to_chat(id)    client_print(id, print_chat, "Tu esi %d is %d.", pozicija[id], isviso);
Nezinau, bandyk ,bet faktas jog mysql pasirinkima darykis pagal save. Atmink, nesu tikras, todel nekopijuok issisiepes.

addinol
Jau po truputį tampa savu
Posts: 144
Joined: 2010 Sep 05 15:20
Skype: kasparas94

Re: MySQL place

Post by addinol »

O kodėl SQL_PrepareQuery ? kur tarkim "SELECT * lentele", nes pas mane SqlConnection tik vienam public'e padarytas o ne per visą pluginą, nes pas mane plugine 5 connectionai daromi į skirtingas lenteles.

Nereiktų naudoti
SQL_ThreadQuery ?

EDIT: beje ar čia nebus to laiko ta prasme jog reikės laukti kol serveris suskaičiuos tą vietą, nes ankščiau buvau padaręs su MYSQL funkcija kažkaip, bet tekdavo laukti 2-3sekundes, kol resultatą gaudavau.
Last edited by addinol on 2011 Oct 15 23:27, edited 1 time in total.

User avatar
psychical
Viršininkas
Posts: 2094
Joined: 2011 Mar 12 22:19
Skype: tautvydas11
Location: Linksmakalnis
Contact:

Re: MySQL place

Post by psychical »

addinol wrote:O kodėl SQL_PrepareQuery ? kur tarkim "SELECT * lentele", nes pas mane SqlConnection tik vienam public'e padarytas o ne per visą pluginą, nes pas mane plugine 5 connectionai daromi į skirtingas lenteles.

Nereiktų naudoti
SQL_ThreadQuery ?
nzn, su mysql dar dirbu neilgai, todel nzn ;D

User avatar
hleV
AMX Mod X ekspertai
Posts: 875
Joined: 2011 Apr 02 11:23
Skype: hlev.lt
Location: Šiauliai

Re: MySQL place

Post by hleV »

Nieko protingo psychical čia neparašė. Visiškai.
Image ← RIP best userbar
DISKUSIJA: KIETAS PLUGIN'O UŽSAKOVAS
Privačios pagalbos neteikiu!

addinol
Jau po truputį tampa savu
Posts: 144
Joined: 2010 Sep 05 15:20
Skype: kasparas94

Re: MySQL place

Post by addinol »

o hleV, galbūt galėtum pažiūrėti savo parašytą kodą? nes kažkodėl kaip sakiau man serveris "išsijungia" be error'o ir nieko, per paleidimą rodo jog nieko neįvyko, bet prisijungti neina ir rodo off.

User avatar
psychical
Viršininkas
Posts: 2094
Joined: 2011 Mar 12 22:19
Skype: tautvydas11
Location: Linksmakalnis
Contact:

Re: MySQL place

Post by psychical »

hleV wrote:Nieko protingo psychical čia neparašė. Visiškai.
Jeigu tu nesugebejai pirmai, pabandziau as, pagal tave as nieko protingo neparasiau, tai dabar rasyk tu kazka protinga...

User avatar
hleV
AMX Mod X ekspertai
Posts: 875
Joined: 2011 Apr 02 11:23
Skype: hlev.lt
Location: Šiauliai

Re: MySQL place

Post by hleV »

psychical wrote:
hleV wrote:Nieko protingo psychical čia neparašė. Visiškai.
Jeigu tu nesugebejai pirmai, pabandziau as, pagal tave as nieko protingo neparasiau, tai dabar rasyk tu kazka protinga...
[php]     while (SQL_MoreResults(query))    {        SQL_ReadResult(query, 0, steamId, charsmax(steamId));        TrieSetCell(Positions, steamId, Entries++);    }[/php]
Keičiam į

[php]     while (SQL_MoreResults(query))    {        SQL_ReadResult(query, 0, steamId, charsmax(steamId));        TrieSetCell(Positions, steamId, Entries++);         SQL_NextRow(query);    }[/php]
ir viskas.
Image ← RIP best userbar
DISKUSIJA: KIETAS PLUGIN'O UŽSAKOVAS
Privačios pagalbos neteikiu!

addinol
Jau po truputį tampa savu
Posts: 144
Joined: 2010 Sep 05 15:20
Skype: kasparas94

Re: MySQL place

Post by addinol »

Dėkui, atrodo veikia ;*

-- 2011 Spa 16 01:16 --

aj ne visdelto neveikia tiksliai, rodo visad tą pačią vietą, nors pagal viską turėčiau būti pirmas. aj jo reik updatinti juk kiekvieną kart kai nušauna kas nors ką nors :D

Post Reply

Who is online

Users browsing this forum: No registered users and 3 guests