MySQL prisijungimas
- aaarnas
- Vyr. diskusijų administratorius
- Posts: 3891
- Joined: 2010 Aug 31 13:21
- Skype: fiarno
- Contact:
Re: MySQL prisijungimas
Tada su ta kalba, kurią geriausiai išmanai ir paprasčiausia string formatuoti.
Palikau CS pasaulį ;/ . Nebepasiekiamas.
Re: MySQL prisijungimas
Butu naudinga jei zmogus gana gerai mokantis php/mysql ir turintis minimalias zinias sukurtu paprasta php/mysql/pawn tut, kad ir paprasciausia statistikos plugina, tarkim yra uzduotis - ji kas 3sec iskviecia funkcija kitaip tariant loop'ina, funkcijoje yra paprasciausi tikrinimai, na tarkim vienas is mano sablonu, aisku neveikiantis, del netaisiklingu mysql query isdestymu, principa suprasite
Code: Select all
set_task
Code: Select all
#include <amxmodx>#include <amxmisc>#include <sqlx> #define PLUGIN "DB test"#define VERSION "0.1"#define AUTHOR "Vycka" new Handle:g_sql_tuple; public plugin_init(){ register_plugin(PLUGIN, VERSION, AUTHOR) set_task(0.1, "mysql_connect") set_task(3.0, "info", 0, "", 0, "b")} public mysql_connect(){ new host[32], user[32], pass[32], db[32], table[32]; host = ""; user = ""; pass = ""; db = ""; table = ""; g_sql_tuple = SQL_MakeDbTuple(host, user, pass, db) new cache[1001]; formatex(cache, charsmax(cache), "QueryHandle","CREATE TABLE IF NOT EXISTS `%s` (`hostname` varchar(100), `ip` varchar(16), `port` varchar(6))", table) SQL_ThreadQuery(g_sql_tuple, "QueryHandle", cache) } public QueryHandle(FailState,Handle:Query,Error[],Errcode) { if(FailState == TQUERY_QUERY_FAILED) return server_print("SQL: Prisijungti prie DB nepavyko") else if(FailState == TQUERY_QUERY_FAILED) return server_print("SQL: Query(uzklausa) nepavyko") if(Errcode) return server_print("SQL: query(uzklausos) klaida: %s",Error) return PLUGIN_CONTINUE} public info() { if(!sql_ready) return PLUGIN_CONTINUE new serverio_pavadinimas[64], serverio_ip[16], serverio_port[16]; get_cvar_string("hostname", serverio_pavadinimas, sizeof(serverio_pavadinimas)-1) get_cvar_string("ip", serverio_ip, sizeof(serverio_ip)-1) get_cvar_string("port", serverio_port, sizeof(serverio_port)-1) //formatex(cache, charsmax(cache), "QueryHandle","INSERT INTO `%s` (hostname, ip, port) VALUES ('%s','%s','%s')", table, serverio_pavadinimas, serverio_ip, serverio_port) formatex(cache, charsmax(cache), "QueryHandle","UPDATE `%s` WHERE (hostname, ip, port) VALUES ('%s','%s','%s')", table, serverio_pavadinimas, serverio_ip, serverio_port) //formatex(cache, charsmax(cache), "UPDATE `table_test` set `hostname` = '%s', `ip` = '%s', `port` = '%s' WHERE `hostname` = ''", serverio_pavadinimas, serverio_ip, serverio_port) SQL_ThreadQuery(g_sql_tuple, "QueryHandle", cache) server_print("SQL: INFO atnaujintas") return PLUGIN_CONTINUE;}
- rotosas
- Gana aktyvus vartotojas
- Posts: 225
- Joined: 2011 Mar 19 18:56
- Skype: rotosas
- Location: Vilnius
Re: MySQL prisijungimas
Jam gi ne AMXX plugino reikia.Tetusis wrote:Butu naudinga jei zmogus gana gerai mokantis php/mysql ir turintis minimalias zinias sukurtu paprasta php/mysql/pawn tut, kad ir paprasciausia statistikos plugina, tarkim yra uzduotis -ji kas 3sec iskviecia funkcija kitaip tariant loop'ina, funkcijoje yra paprasciausi tikrinimai, na tarkim vienas is mano sablonu, aisku neveikiantis, del netaisiklingu mysql query isdestymu, principa suprasiteCode: Select all
set_task
Code: Select all
#include <amxmodx>#include <amxmisc>#include <sqlx> #define PLUGIN "DB test"#define VERSION "0.1"#define AUTHOR "Vycka" new Handle:g_sql_tuple; public plugin_init(){ register_plugin(PLUGIN, VERSION, AUTHOR) set_task(0.1, "mysql_connect") set_task(3.0, "info", 0, "", 0, "b")} public mysql_connect(){ new host[32], user[32], pass[32], db[32], table[32]; host = ""; user = ""; pass = ""; db = ""; table = ""; g_sql_tuple = SQL_MakeDbTuple(host, user, pass, db) new cache[1001]; formatex(cache, charsmax(cache), "QueryHandle","CREATE TABLE IF NOT EXISTS `%s` (`hostname` varchar(100), `ip` varchar(16), `port` varchar(6))", table) SQL_ThreadQuery(g_sql_tuple, "QueryHandle", cache) } public QueryHandle(FailState,Handle:Query,Error[],Errcode) { if(FailState == TQUERY_QUERY_FAILED) return server_print("SQL: Prisijungti prie DB nepavyko") else if(FailState == TQUERY_QUERY_FAILED) return server_print("SQL: Query(uzklausa) nepavyko") if(Errcode) return server_print("SQL: query(uzklausos) klaida: %s",Error) return PLUGIN_CONTINUE} public info() { if(!sql_ready) return PLUGIN_CONTINUE new serverio_pavadinimas[64], serverio_ip[16], serverio_port[16]; get_cvar_string("hostname", serverio_pavadinimas, sizeof(serverio_pavadinimas)-1) get_cvar_string("ip", serverio_ip, sizeof(serverio_ip)-1) get_cvar_string("port", serverio_port, sizeof(serverio_port)-1) //formatex(cache, charsmax(cache), "QueryHandle","INSERT INTO `%s` (hostname, ip, port) VALUES ('%s','%s','%s')", table, serverio_pavadinimas, serverio_ip, serverio_port) formatex(cache, charsmax(cache), "QueryHandle","UPDATE `%s` WHERE (hostname, ip, port) VALUES ('%s','%s','%s')", table, serverio_pavadinimas, serverio_ip, serverio_port) //formatex(cache, charsmax(cache), "UPDATE `table_test` set `hostname` = '%s', `ip` = '%s', `port` = '%s' WHERE `hostname` = ''", serverio_pavadinimas, serverio_ip, serverio_port) SQL_ThreadQuery(g_sql_tuple, "QueryHandle", cache) server_print("SQL: INFO atnaujintas") return PLUGIN_CONTINUE;}
P.S. Aš manau, kad, newb, galėtum su C++ padaryt, nes kaip žinau visai neblogai AMXX pawno išmanai, o C++ į pawno turi daug panašumų.


Jei padėjau, nepagailėk ir nepatingėk paspaust +KARMA.

Re: MySQL prisijungimas
Panaši tik sintaksė ir preprocesorius. Kaip ir su nemažai kitų kalbų. Jei daryt kažką su C++ efektyviai ir "tinkamai", tai tikrai kodo nerašysi taip, kaip darytum su Pawn. Žodžiu tavo argumentas jog "jei Pawn išmanai, naudok būtent C++" yra neteisingas.rotosas wrote: P.S. Aš manau, kad, newb, galėtum su C++ padaryt, nes kaip žinau visai neblogai AMXX pawno išmanai, o C++ į pawno turi daug panašumų.
Ir šiaip tas Pawn yra skriptinimo kalba labiau, kai C++ yra aukšto lygio programavimo kalba. Drįsiu pasakyt kad, jei moki gerai kurt plugin'us - nereiškia kad moki programuot.
- aaarnas
- Vyr. diskusijų administratorius
- Posts: 3891
- Joined: 2010 Aug 31 13:21
- Skype: fiarno
- Contact:
Re: MySQL prisijungimas
Pawn labiau panaši į C (aišku be pointerių+dalykai iš C++ kaip reference), bet tikrai ne į C++, jei vien dar OOP paliesim.
Esmė, kad yra elementari sintaksė, kuri naudojama daugumoje kalbų.
Esmė, kad yra elementari sintaksė, kuri naudojama daugumoje kalbų.
Palikau CS pasaulį ;/ . Nebepasiekiamas.
Who is online
Users browsing this forum: No registered users and 8 guests