Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie
Naprawienie

Problem z bazą w pluginie

Naprawienie

  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
Brak odpowiedzi do tego tematu

#1 botnaizi

    Nowy

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:6
  • Lokalizacja: / home /
Offline

Napisano 15.09.2012 09:09

Witajcie,

Piszę sobie mały plugin, który będzie sprawdzał graczy, na których admini mają zwracać większą uwagę.
/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <sqlx>

#define PLUGIN "podejrzani"
#define VERSION "1.0"
#define AUTHOR "dragg"

new host[32], user[32], pass[32], db[32]
new _host, _user, _pass, _db
new error[256], errorcode
new Handle:sqlmakedbtuple
new Handle:sqlconnect
new ip[32], steam_id[32], nick[32]

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
_host = register_cvar("check_host", "host")
_user = register_cvar("check_user", "user")
_pass = register_cvar("check_pass", "pass")
_db = register_cvar("check_db", "db2311")
}

public client_connect(id){

if(is_user_bot(id) || is_user_hltv(id))
return PLUGIN_CONTINUE

get_pcvar_string(_host, host, 31)
get_pcvar_string(_user, user, 31)
get_pcvar_string(_pass, pass, 31)
get_pcvar_string(_db, db, 31)
get_user_name(id, nick, 31)
get_user_authid(id, steam_id, 31)
get_user_ip(id, ip, 31)
sqlmakedbtuple = SQL_MakeDbTuple(host, user, pass, db)
sqlconnect = SQL_Connect(sqlmakedbtuple, errorcode, error, 255)

if (!sqlconnect) {
log_amx("Server cannot connect to database")
log_amx("Error (%d): %s", errorcode, error)
return PLUGIN_CONTINUE
}
new Handle:query = SQL_PrepareQuery(sqlconnect, "SELECT nick FROM `check` WHERE `steam_id` = '%s' OR `ip` LIKE '%s' OR `nick`='%s' LIMIT 1", steam_id, ip, nick)
SQL_Execute(query)

if (SQL_MoreResults(query)){
client_cmd(id, "say_team @[test] %s", nick)
log_amx("dziala")
}
SQL_FreeHandle(query)
return PLUGIN_CONTINUE
}


Jednak ma on problem z połączeniem się do bazy(Error 1045). Raz załapał i nie sypał błędami ale teraz nawet jak wpiszę poprawny host to bierze nie to IP. Część pluginu mam z pluginu rank_system dlatego też zmieniłem cvary (chyba dobrze, ale jakoś słabo się na tym znam).
I przykład: jeśli wpiszę xxx.pl to po restarcie serwera bierze mi IP całkiem inne.
Wiem, że np jeśli zmieniłem nazwę użytkownika to zmiana mapy nie pomaga i trzeba serwer zrestartować, ale w tym wypadku nie mam pojęcia skąd plugin bierze to lewe IP.
Nie mam pojęcia czego to może być wina.

Użytkownik botnaizi edytował ten post 15.09.2012 09:11

  • +
  • -
  • 0





Również z jednym lub większą ilością słów kluczowych: Naprawienie

Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych