Witam, kilka dni temu zacząłem się uczyć pisania pluginów, no i napotkałem problem przy sql, a dokładniej łączy mnie z bazą danych, ale nie mogę zwrócić żadnych wyników, a zwracany błąd to "HamFilter" i nie wiem o co dokładniej chodzi Mam dosyć spore doświadczenie w pisaniu kodów, a przynajmniej rozumiem co i jak ale w PAWN'ie nigdy nie pisałem.
Oto kod:
#include <amxmodx> #include <amxmisc> #include <cstrike> #include <engine> #include <fakemeta> #include <fun> #include <hamsandwich> #include <sqlx> #define PLUGIN "Mysql" #define VERSION "1.0" #define AUTHOR "DarkLink" new Handle:gTuple; public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_clcmd("say test","CheckData",ADMIN_KICK,"Testuje polaczenie") gTuple = SQL_MakeDbTuple("host","uzytkownik","haslo","baza") } public CheckData(id){ new Data[1] Data[0] = id; new qCommand[512], szName[32] get_user_name(id, szName, charsmax(szName)) format(qCommand, sizeof qCommand-1, "SELECT * FROM `jml_cs_curskin` WHERE `nick` = '%s'", szName) SQL_ThreadQuery(gTuple, "CheckHandler", qCommand, Data, 1) } public CheckHandler(FailState, Handle:Query, Errorcode, Error[], Data[], DataSize) { new id = Data[0] if(Errorcode) log_amx("Blad w zapytaniu: %s [CheckData]", Error) if(FailState == TQUERY_CONNECT_FAILED) { log_amx("Nie mozna podlaczyc sie do bazy danych.") return PLUGIN_CONTINUE } else if(FailState == TQUERY_QUERY_FAILED) { log_amx("Zapytanie anulowane [CheckData]") return PLUGIN_CONTINUE } if(!SQL_MoreResults(Query)) log_amx("Brak danych!") else { new zwrot[1]; zwrot[0] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "userid")); client_print(id,print_chat,zwrot[0]) } return PLUGIN_CONTINUE }
Natomiast zwracana wartość po wpisaniu w konsoli "say test" lub w say'u "test" to:
L 03/06/2015 - 17:16:50: [testsql.amxx] Blad w zapytaniu: HamFilter [CheckData]
Prosiłbym o pomoc
//Edit:
Zmieniając linijki od 53. do 55. na:
new szText[128]; SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "userid"), szText, 127); console_print(id,"Tekst: %s", szText)
Wyświetla mi
Tekst: 986
Czyli to co chciałem, ale nadal wyrzuca ten błąd w zapytaniu: HamFilter, nie wie ktoś o co chodzi?
Użytkownik DarkLink edytował ten post 06.03.2015 17:48