[Tutorial] Using BlueG's MySQL plugin R7 (with cache)
#47

Quote:
Originally Posted by Splav
Посмотреть сообщение
Hello, all
I have special function written to R6 MySQL plugin
How can I rewrite it on R7 version?

Sorry for my English
Quote:
Originally Posted by Coicatak
Посмотреть сообщение
Erm. How to get the return value of a callback?

For example here, my callback "LoadSQLVehicle" return the id of the created vehicle with CreateVehicle() or -1 if there was an error. So, how to I get this returned value?
Код:
mysql_format_ex(str, "SELECT * FROM vehicle WHERE veh_id=%d", id);
mysql_query(str, "LoadSQLVehicle", "ii", i, 0);
Quote:
Originally Posted by scott1
Посмотреть сообщение
I all,

i am triyng to update my gm to the r7,

but i got an probleme,

before i was using R5

i made when playerconnect

Код:
if(IsIpBanned(ip))
{
}
IsIpBanned return 1 if find row with the select, and 0 if not.

But with the R7 on don't know how to do it, because i must call an another callback .

Thank you

Max
Functions like that are not exactly "supported" by the new plugin and the threaded approach. Why? Because the query is not executed in the script execution thread and a callback will be fired once the query has finished.

Previously the server worked like this:
1. Do a million of things - synchronize players, run OnPlayerUpdate, other callbacks and code.
2. Query is fired!
3. Server waits until query is finished - does not do anything else meanwhile.
4. Can proceed with the code where it was left off before the query started.

Now it looks like this:
1. Do a million of things...
2. Query is fired!
3. Do a million of things...
4. Do a million of things...
5. Callback is called once query finishes.

So this means that functions like the ones you mentioned have become more difficult to create. It is possible, but I would not suggest it.

To show some code modifications, lets say you have something like the poster above mentioned:
pawn Код:
stock fromUnixTime(time)
{
    new unbantime[25];
    format(str, sizeof(str), "SELECT FROM_UNIXTIME( %d )", time);
    if(mysql_query(str) && mysql_store_result())
    {
        mysql_fetch_row_format(unbantime);
    }
    mysql_free_result();
    return unbantime;
 }
This is probably called like this:
pawn Код:
format(string, sizeof(string), "Hey, the unban time is %s!", fromUnixTime(timeeeeee));
Now what you will have to do is make the query inside your function where format is called. Pass the necessary parameters that you desire to keep to mysql_function_query.
pawn Код:
format(query, sizeof(query), "SELECT FROM_UNIXTME(%d)", timeeeeee);
mysql_function_query(connectionHandle, query, true, "OnUnixTimeSelected", "i", playerid); // Change the "i" and following parameters according to what you need!

// now a new callback, out of the previous scope.
forward OnUnixTimeSelected(...);
public OnUnixTimeSelected(...)
{
    cache_get_data(rows, fields, connectionHandle);
    if(rows)
        cache_get_row(0, 0, time);
    // Continue operating with the time string.
    return 1;
}
Hopefully this helps you a bit!

Quote:
Originally Posted by costel_nistor96
Посмотреть сообщение
"row" parameter from cache_get_field_content is always 0 ? If not, when is different ?
It depends on which row you're actually parsing. If your query returns 4 rows and you know it does, you can do:
pawn Код:
cache_get_field_content(0, ...);
cache_get_field_content(1, ...);
cache_get_field_content(2, ...);
cache_get_field_content(3, ...);
But mostly, it is used in loops:
pawn Код:
cache_get_data(rows, fields, connectionHandle);
for(new i = 0; i != rows; i++)
{
    cache_get_field_content(i, ...);
}
Reply


Messages In This Thread
Using BlueG's MySQL plugin R7 and newer (with cache) - by AndreT - 27.04.2012, 22:55
Re: Using BlueG's MySQL plugin R7 (with cache) - by Ricop522 - 28.04.2012, 05:01
Re: Using BlueG's MySQL plugin R7 (with cache) - by Niko_boy - 28.04.2012, 05:04
Respuesta: Using BlueG's MySQL plugin R7 (with cache) - by [Vector] - 28.04.2012, 05:36
Re: Using BlueG's MySQL plugin R7 (with cache) - by Burridge - 28.04.2012, 08:31
Re: Respuesta: Using BlueG's MySQL plugin R7 (with cache) - by AndreT - 28.04.2012, 08:51
Re: Using BlueG's MySQL plugin R7 (with cache) - by Lorenc_ - 28.04.2012, 09:39
Respuesta: Using BlueG's MySQL plugin R7 (with cache) - by [Vector] - 30.04.2012, 19:20
Re: Using BlueG's MySQL plugin R7 (with cache) - by AndreT - 30.04.2012, 20:03
Re: Using BlueG's MySQL plugin R7 (with cache) - by MP2 - 18.05.2012, 16:50
Re: Using BlueG's MySQL plugin R7 (with cache) - by kikito - 18.05.2012, 16:51
Re: Using BlueG's MySQL plugin R7 (with cache) - by AndreT - 18.05.2012, 19:29
Re: Using BlueG's MySQL plugin R7 (with cache) - by MP2 - 18.05.2012, 19:44
Re: Using BlueG's MySQL plugin R7 (with cache) - by AndreT - 18.05.2012, 19:51
Re: Using BlueG's MySQL plugin R7 (with cache) - by MP2 - 18.05.2012, 20:03
Re: Using BlueG's MySQL plugin R7 (with cache) - by AndreT - 18.05.2012, 20:37
Re: Using BlueG's MySQL plugin R7 (with cache) - by MP2 - 18.05.2012, 21:42
Re: Using BlueG's MySQL plugin R7 (with cache) - by AndreT - 19.05.2012, 08:18
Re: Using BlueG's MySQL plugin R7 (with cache) - by MP2 - 19.05.2012, 12:04
Re: Using BlueG's MySQL plugin R7 (with cache) - by Hiddos - 19.05.2012, 12:07
Re: Using BlueG's MySQL plugin R7 (with cache) - by Luis- - 20.05.2012, 00:29
Re : Using BlueG's MySQL plugin R7 (with cache) - by Vukilore - 21.05.2012, 16:28
Respuesta: Using BlueG's MySQL plugin R7 (with cache) - by Sauxe - 22.05.2012, 03:26
Re: Using BlueG's MySQL plugin R7 (with cache) - by TheArcher - 23.05.2012, 19:06
Re: Using BlueG's MySQL plugin R7 (with cache) - by AShop - 27.05.2012, 18:08
Re: Using BlueG's MySQL plugin R7 (with cache) - by Luis- - 27.05.2012, 18:19
Re: Using BlueG's MySQL plugin R7 (with cache) - by AndreT - 27.05.2012, 19:16
Re: Using BlueG's MySQL plugin R7 (with cache) - by ArchBishop - 27.05.2012, 20:25
Re: Using BlueG's MySQL plugin R7 (with cache) - by AndreT - 27.05.2012, 20:43
Re: Using BlueG's MySQL plugin R7 (with cache) - by ArchBishop - 28.05.2012, 20:21
AW: Re: Using BlueG's MySQL plugin R7 (with cache) - by Extremo - 11.06.2012, 07:01
Re: Using BlueG's MySQL plugin R7 (with cache) - by AndreT - 11.06.2012, 10:08
Re: Using BlueG's MySQL plugin R7 (with cache) - by Kyle - 11.06.2012, 11:08
Re: Using BlueG's MySQL plugin R7 (with cache) - by AndreT - 11.06.2012, 11:56
AW: Using BlueG's MySQL plugin R7 (with cache) - by Extremo - 11.06.2012, 12:18
Re: Using BlueG's MySQL plugin R7 (with cache) - by MP2 - 23.06.2012, 09:23
Re: Using BlueG's MySQL plugin R7 (with cache) - by Kyle - 23.06.2012, 10:13
Re: Using BlueG's MySQL plugin R7 (with cache) - by MP2 - 23.06.2012, 13:37
Re: Using BlueG's MySQL plugin R7 (with cache) - by Kyle - 23.06.2012, 13:40
AW: Using BlueG's MySQL plugin R7 (with cache) - by Cank - 23.06.2012, 14:02
Re: Using BlueG's MySQL plugin R7 (with cache) - by AndreT - 23.06.2012, 14:34
Re: Using BlueG's MySQL plugin R7 (with cache) - by SWEMike - 30.06.2012, 12:37
Re: Using BlueG's MySQL plugin R7 (with cache) - by AndreT - 30.06.2012, 20:21
Re: Using BlueG's MySQL plugin R7 (with cache) - by Splav - 02.07.2012, 13:10
Re: Using BlueG's MySQL plugin R7 (with cache) - by Coicatak - 10.07.2012, 12:08
Re : Using BlueG's MySQL plugin R7 (with cache) - by scott1 - 16.07.2012, 17:39
Re: Using BlueG's MySQL plugin R7 (with cache) - by AndreT - 17.07.2012, 20:28
Re : Using BlueG's MySQL plugin R7 (with cache) - by scott1 - 18.07.2012, 11:34
Re: Using BlueG's MySQL plugin R7 (with cache) - by Gumica - 22.07.2012, 12:35
Re: Re : Using BlueG's MySQL plugin R7 (with cache) - by AndreT - 27.07.2012, 10:19
Re: Using BlueG's MySQL plugin R7 (with cache) - by AndreT - 29.09.2012, 22:53
Re: Using BlueG's MySQL plugin R7 (with cache) - by Richie© - 03.10.2012, 21:08
Re: Using BlueG's MySQL plugin R7 (with cache) - by ReneG - 04.10.2012, 05:00
Re: Using BlueG's MySQL plugin R7 (with cache) - by Richie© - 04.10.2012, 20:54
Re: Using BlueG's MySQL plugin R7 (with cache) - by ScriptWriter - 12.10.2012, 15:56
Re: Using BlueG's MySQL plugin R7 (with cache) - by AndreT - 13.10.2012, 12:58
Re: Using BlueG's MySQL plugin R7 (with cache) - by ScriptWriter - 13.10.2012, 13:03
Re: Using BlueG's MySQL plugin R7 (with cache) - by AndreT - 13.10.2012, 13:05
Re: Using BlueG's MySQL plugin R7 (with cache) - by ScriptWriter - 13.10.2012, 13:15
Re: Using BlueG's MySQL plugin R7 (with cache) - by AndreT - 13.10.2012, 14:33
Re: Using BlueG's MySQL plugin R7 (with cache) - by ScriptWriter - 13.10.2012, 14:54
Re: Using BlueG's MySQL plugin R7 (with cache) - by AndreT - 13.10.2012, 15:04
Re: Using BlueG's MySQL plugin R7 (with cache) - by ScriptWriter - 01.11.2012, 07:58
Re: Using BlueG's MySQL plugin R7 (with cache) - by Edvin - 01.11.2012, 08:01
Re: Using BlueG's MySQL plugin R7 (with cache) - by ScriptWriter - 01.11.2012, 08:20
Re: Using BlueG's MySQL plugin R7 (with cache) - by IstuntmanI - 01.11.2012, 12:52
Re: Using BlueG's MySQL plugin R7 (with cache) - by ScriptWriter - 01.11.2012, 14:06
Re: Using BlueG's MySQL plugin R7 (with cache) - by IstuntmanI - 01.11.2012, 14:13
Re: Using BlueG's MySQL plugin R7 (with cache) - by ScriptWriter - 01.11.2012, 15:00
Re: Using BlueG's MySQL plugin R7 (with cache) - by ReneG - 01.11.2012, 16:09
Re: Using BlueG's MySQL plugin R7 (with cache) - by ReneG - 11.11.2012, 19:25
Re: Using BlueG's MySQL plugin R7 (with cache) - by AirKite - 11.11.2012, 20:05
Re: Using BlueG's MySQL plugin R7 (with cache) - by fordawinzz - 23.11.2012, 12:33
Re: Using BlueG's MySQL plugin R7 (with cache) - by AndreT - 23.11.2012, 13:50
Re: Using BlueG's MySQL plugin R7 (with cache) - by fordawinzz - 24.11.2012, 09:38
Re: Using BlueG's MySQL plugin R7 (with cache) - by AndreT - 24.11.2012, 11:20
Re: Using BlueG's MySQL plugin R7 (with cache) - by EterNo - 26.11.2012, 12:54
Re: Using BlueG's MySQL plugin R7 (with cache) - by EterNo - 26.11.2012, 18:28
Re: Using BlueG's MySQL plugin R7 (with cache) - by CoDeZ - 26.11.2012, 21:30
Re: Using BlueG's MySQL plugin R7 (with cache) - by Marusa - 03.12.2012, 18:26
Re: Using BlueG's MySQL plugin R7 (with cache) - by DaLgakıran - 30.05.2013, 14:01
Re: Using BlueG's MySQL plugin R7 (with cache) - by AndreT - 09.06.2013, 10:28
Re: Using BlueG's MySQL plugin R7 (with cache) - by Yashas - 21.07.2013, 08:56
Re: Using BlueG's MySQL plugin R7 (with cache) - by Richie© - 21.07.2013, 09:07
Re: Using BlueG's MySQL plugin R7 (with cache) - by Yashas - 21.07.2013, 09:21
Re: Using BlueG's MySQL plugin R7 (with cache) - by Richie© - 21.07.2013, 10:52
Re: Using BlueG's MySQL plugin R7 (with cache) - by Misiur - 21.07.2013, 10:57
Re: Using BlueG's MySQL plugin R7 (with cache) - by IstuntmanI - 21.07.2013, 11:14
Re: Using BlueG's MySQL plugin R7 (with cache) - by Grumbles - 28.07.2013, 23:46
Re: Using BlueG's MySQL plugin R7 (with cache) - by Luis- - 29.07.2013, 03:28
Re: Using BlueG's MySQL plugin R7 (with cache) - by Grumbles - 29.07.2013, 15:22
Re: Using BlueG's MySQL plugin R7 (with cache) - by Yashas - 30.07.2013, 03:07
Re: Using BlueG's MySQL plugin R7 (with cache) - by Michalec - 29.10.2013, 14:43
Re: Using BlueG's MySQL plugin R7 (with cache) - by gotwarzone - 12.11.2013, 08:50
Re : Using BlueG's MySQL plugin R7 (with cache) - by ombre - 11.01.2014, 13:35
Re: Using BlueG's MySQL plugin R7 (with cache) - by anou1 - 13.01.2014, 16:52
Re: Using BlueG's MySQL plugin R7 (with cache) - by dusk - 14.01.2014, 13:25
Re: Using BlueG's MySQL plugin R7 (with cache) - by KevinPRINCE - 22.02.2014, 20:51
Re: Using BlueG's MySQL plugin R7 (with cache) - by Guest4390857394857 - 20.03.2014, 08:03
Re: Using BlueG's MySQL plugin R7 (with cache) - by AiRaLoKa - 16.05.2014, 13:03
Re: Using BlueG's MySQL plugin R7 (with cache) - by ~Yoshi - 05.09.2015, 00:50
Re: Using BlueG's MySQL plugin R7 (with cache) - by AmigaBlizzard - 27.01.2016, 23:27
Re: Using BlueG's MySQL plugin R7 (with cache) - by maddinat0r - 29.01.2016, 13:07
Re: Using BlueG's MySQL plugin R7 (with cache) - by AmigaBlizzard - 07.02.2016, 12:05
Re: Using BlueG's MySQL plugin R7 (with cache) - by maddinat0r - 07.02.2016, 14:38
Re: Using BlueG's MySQL plugin R7 (with cache) - by AmigaBlizzard - 10.02.2016, 20:42
Re: Using BlueG's MySQL plugin R7 (with cache) - by Slawiii - 11.05.2016, 18:26
Re: Using BlueG's MySQL plugin R7 (with cache) - by thesuperuser - 13.05.2016, 12:36
Re: Using BlueG's MySQL plugin R7 (with cache) - by iSpy - 13.05.2016, 12:38

Forum Jump:


Users browsing this thread: 1 Guest(s)