new jatekos[MAX_PLAYER_NAME], jmoney, jpassword[30], bool:isvip, Float:izpos;
public OnFilterScriptInit() {jatekos = \"SSS\";jpassword = \"tesztjelszo\";jmoney = 155;isvip = true;jzpos = 15.0;//Adatok eltárolása (Ezt szeretném megtudni válaszotokban, viszont tudomásom szerint így van:/*mysql_connect(SQL_HOST, SQL_USER, SQL_DB, SQL_PASS); // természetesen az adatok define olva vannak, és a táblázat is készen áll.new str[100];format(str, sizeof(str), \"INSERT INTO `testtable` (`jatekos`, `password`, `money`, `isvip`, `playerZpos`) VALUES (\'%s\', MD5(\'%s\'), \'%d\', \'%b\', \'%f\')\", jatekos, jpassword, jmoney, isvip, jzpos);*/// Betöltõs része.---------------------------------------------------jatekos = \"\";jpassword = \"\";jmoney = 0;isvip = false;jzpos = 0.0;//lenulláztam mindent, hogy tesztelhessük.printf(\"%s || %s || %d || %b || %f\", jatekos, jpassword, jmoney, isvip, jzpos); return 1;}
#include <a_samp>#include <a_mysql> // BlueG R7 mysql pluginenumPlayerData{jatekosnev[24],jpassword[24],jmoney,bool:isvip,Float:jzpos}stock const SQL_HOST[] = \"localhost\";stock const SQL_USER[] = \"\";stock const SQL_PASS[] = \"\";stock const SQL_DB[] = \"\"newFCH; // Újabb csatlakozási pont mysqlhez ami ehhez a filterscripthez kötött.newPlayerInfo[MAX_PLAYERS][PlayerData]; // Minden egyes játékosnak létrehozva a fenti enum tömb a benne lévõ hivatkozásokkal/elnevezésekkel (persze külön típusuak)public OnFilterScriptInit() {FCH = mysql_connect(SQL_HOST, SQL_USER, SQL_DB, SQL_PASS);// Késõbbiekben nem nullát kell írni hanem \"playerid\" kifejezést, mely egy bizonyos játékost jelöl. (mondjuk pont azt aki csatlakozik a szerverhez) OnPlayerConnect(playerid) <-- Ott a playeridstrcat(PlayerInfo[0][jatekosnev], \"SSS\", 24);strcat(PlayerInfo[0][jpassword], \"tesztjelszo\", 24);PlayerInfo[0][jmoney] = 155;PlayerInfo[0][isvip] = true;PlayerInfo[0][jzpos] = 15.0;new query[256];format(query, sizeof(query), \"INSERT INTO `testtable` (`jatekosnev`, `password`, `money`, `isvip`, `playerZpos`) VALUES (\'%s\', MD5(\'%s\'), \'%d\', \'%b\', \'%f\')\", PlayerInfo[0][jatekosnev], PlayerInfo[0][jpassword], PlayerInfo[0][jmoney], PlayerInfo[0][isvip], PlayerInfo[0][jzpos]);mysql_function_query(FCH, query, false, \"THREAD_pelda\", \"d\", 12345);return 1;}forward THREAD_pelda(egypeldaint);public THREAD_pelda(egypeldaint){//A játékos nevet és a jelszót nem törlöm mivel ezek adottak lesznek mikor egy játékos csatlakozni fog és beírja a jelszavát, és ezek segítségével lehet majd utasítást küldeni mysql oldalra hogy betudja azonosítani milyen adatokkal térjen vissza.// Clear dataPlayerInfo[0][jmoney] = 0;PlayerInfo[0][isvip] = false;PlayerInfo[0][jzpos] = 0.0; new query[256]; // Itt én kiválasztottam hogy melyik adatokkal térjen vissza mivel a másik kettõ már úgyis ismert, ami éppen a keresési feltétel.format(query, sizeof(query), \"SELECT `money`,`isvip`,`playerZpos` FROM `testtable` WHERE `jatekosnev` = \'%s\' AND `password` = MD5(\'%s\')\", PlayerInfo[0][jatekosnev], PlayerInfo[0][jpassword]);mysql_function_query(FCH, query, true, \"THREAD_load\", \"ss\", PlayerInfo[0][jatekosnev], PlayerInfo[0][jpassword]); // enable cache data sokkal gyorsabb adatfeldolgozásreturn 1;}forward THREAD_load(str_1[], str_2[]);public THREAD_load(str_1[], str_2[]){newiRows,iFields,iFetch[24]; // Egy string változó soronként ebbe kerül ideiglenesen a beolvasott adat míg megfelelõ átalakítás után a jó változóba kerül tárolásra.cache_get_data(iRows, iFields, FCH);if(iRows == 0) return printf(\"A megadott feltételekkel nem létezik adatsor %s, %s\", str_1, str_2);cache_get_row(0, 0, iFetch, FCH);PlayerInfo[0][jmoney] = strval(iFetch);cache_get_row(0, 1, iFetch, FCH);PlayerInfo[0][isvip] = !!strval(iFetch);cache_get_row(0, 2, iFetch, FCH); PlayerInfo[0][jzpos] = floatstr(iFetch);printf(\"%s || %s || %d || %b || %f\", PlayerInfo[0][jatekosnev], PlayerInfo[0][jpassword], PlayerInfo[0][jmoney], PlayerInfo[0][isvip], PlayerInfo[0][jzpos]);return 1;}