MySql Połaczenie
Sk@te
24.01.2011
Witam!
Jestem poczatkujacym w pisaniu pluginów..
Lecz mam dobrze opanowane C++.
Mam pytanie jak połaczyć sie z Mysql i jak wywołać najprostsze komendy w nim.
Z gory dziekuje za pomoc.
Jestem poczatkujacym w pisaniu pluginów..
Lecz mam dobrze opanowane C++.
Mam pytanie jak połaczyć sie z Mysql i jak wywołać najprostsze komendy w nim.
Z gory dziekuje za pomoc.
R3X
24.01.2011
samo C nic tu nie pomoże, jak nie znasz SQLa
luknij to
Dokumentacja AMXX.pl - Nieoficjalny polski support AMX Mod X
luknij to
Dokumentacja AMXX.pl - Nieoficjalny polski support AMX Mod X
Sk@te
24.01.2011
samo C nic tu nie pomoże, jak nie znasz SQLa
luknij to
Dokumentacja AMXX.pl - Nieoficjalny polski support AMX Mod X
Sql oczywiscie ze znam, tylko nie znam komend typu jak z poziomu pawn'a sie połaczyć z mysql.
AmD
24.01.2011
Sk@te
24.01.2011
Dobra wielkie dzięki.
Ale mam problem z tym kodem
Wyskakuje blad: Error: Must be a constant expression; assumed zero on line 12.
Do linki z utworzeniem uchwytu:
Ale mam problem z tym kodem
/* Plugin generated by AMXX-Studio */ #include <amxmodx> #include <amxmisc> #include <sqlx> #define PLUGIN "plug" #define VERSION "1.0" #define AUTHOR "author" new Handle:Tuple = SQL_MakeDbTuple("mysql.cba.pl", "testamxx_cba_pl", "****", "testamxx_cba_pl"); // uchwyt dla mysql public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_clcmd("say /test", "test"); // Wywolanie funkcji test } public test() { new qCommand[512]; format(qCommand, sizeof qCommand-1, "INSERT INTO test VALUES(NULL, 'Test1', 'Test2');"); SQL_ThreadQuery(Tuple, "SaveHandler", qCommand); } public SaveHandler(FailState, Handle:Query, Errorcode, Error[], Data[], DataSize) { new id = Data[0] if(Errorcode) "Blad w zapytaniu: %s [SaveData]", Error) if(FailState == TQUERY_CONNECT_FAILED) { client_print(1,print_chat,"Nie mozna podlaczyc sie do bazy danych.") return PLUGIN_CONTINUE } else if(FailState == TQUERY_QUERY_FAILED) { client_print(1,print_chat,"Zapytanie anulowane [SaveData]") return PLUGIN_CONTINUE } return PLUGIN_CONTINUE }
Wyskakuje blad: Error: Must be a constant expression; assumed zero on line 12.
Do linki z utworzeniem uchwytu:
new Handle:Tuple = SQL_MakeDbTuple("mysql.cba.pl", "testamxx_cba_pl", "****", "testamxx_cba_pl"); // uchwyt dla mysqlBardzo bym prosil o pomoc i wytlumaczenie co zle zrobilem.
DarkGL
25.01.2011
w c też by coś takiego nie zadziałało
Użytkownik Pavulon edytował ten post 25.01.2011 00:28
Spoiler
Użytkownik Pavulon edytował ten post 25.01.2011 00:28
AmD
25.01.2011
chcę jedynie dodać że cba chyba nie przyjmuję innych hostów niż 127.0.0.1, co oznacza że się nie połączysz z bazą...
(jeśli mówię źle, proszę o usunięcie posta oraz nie "nagradzania" mnie punktami ujemnymi)
(jeśli mówię źle, proszę o usunięcie posta oraz nie "nagradzania" mnie punktami ujemnymi)
Sk@te
25.01.2011
Ok dzięki teraz mi przynajmniej nie wyskoczył błąd przy kompilacji.
Ale rzeczywiście coś nie działa, nie dodaje krotek do bazy, ani nie wyskakuje żaden komunikat o błędzie.
Dodano 25 styczeń 2011 - 17:27:
Zmieniłem żeby info o błędzie dało mi do logów i w logach coś takiego się pojawiło:
Użytkownik Sk@te edytował ten post 25.01.2011 16:23
Ale rzeczywiście coś nie działa, nie dodaje krotek do bazy, ani nie wyskakuje żaden komunikat o błędzie.
Dodano 25 styczeń 2011 - 17:27:
Zmieniłem żeby info o błędzie dało mi do logów i w logach coś takiego się pojawiło:
L 01/25/2011 - 17:25:14: Start of error session. L 01/25/2011 - 17:25:14: Info (map "de_dust2") (file "addons/amxmodx/logs/error_20110125.log") L 01/25/2011 - 17:25:14: [MySQL] Function not found: SaveHandler L 01/25/2011 - 17:25:14: [AMXX] Run time error 10 (plugin "test.amxx") (native "SQL_ThreadQuery") - debug not enabled! L 01/25/2011 - 17:25:14: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
Użytkownik Sk@te edytował ten post 25.01.2011 16:23
AmD
25.01.2011
debug do plugins.ini oraz pamiętaj że cba nie łączy się z innymi hostami, kup do testów najtańszego pr0serwer'a i testuj (proserwer .pl)
Użytkownik AmD edytował ten post 25.01.2011 18:00
Użytkownik AmD edytował ten post 25.01.2011 18:00
DarkGL
25.01.2011
public SaveHandler(FailState, Handle:Query, Errorcode, Error[], Data[], DataSize)
na
public SaveHandler(FailState,Handle:Query,Error[],Errcode,Data[],DataSize)
na
public SaveHandler(FailState,Handle:Query,Error[],Errcode,Data[],DataSize)
Sk@te
25.01.2011
public SaveHandler(FailState, Handle:Query, Errorcode, Error[], Data[], DataSize)
na
public SaveHandler(FailState,Handle:Query,Error[],Errcode,Data[],DataSize)
Tak właśnie mam.