Skocz do zawartości

  • Zaloguj korzystając z Facebooka Zaloguj korzystając z Twittera Zaloguj przez Steam Zaloguj poprzez Google      Logowanie »   
  • Rejestracja

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

[ROZWIĄZANE] Wyszukiwanie IP serwera w bazie.


Najlepsza odpowiedź GwynBleidD, 26.02.2014 20:03

Nie działa, bo SQL_ThreadQuery nie posiada formatowania stringa. Musisz to zrobić wcześniej funkcją format lub innym jej odpowiednikiem.

Przejdź do postu


  • Zamknięty Temat jest zamknięty
3 odpowiedzi w tym temacie

#1 Danny OK

    Zaawansowany

  • Użytkownik

Reputacja: 12
Początkujący

  • Postów:148
  • GG:
  • Steam:steam
  • Imię:Daniel
  • Lokalizacja:Internet
Offline

Napisano 26.02.2014 16:16

Witam,
Robie plugin sobie i natrafiłem na problem :D Nie działa wyszukiwanie IP serwera w bazie. Jeśli wpiszę je na twardo to wyszuka ale jeśli dam aby samo pobierało to nie chce.
 
Kod dzialający (twarde wpisywanie IP):



public noc_load()
{
	g_SqlTupleNoc = SQL_MakeDbTuple("stroba.pl", "baza", "haslo", "tabela");
	SQL_ThreadQuery(g_SqlTupleNoc, "NocSQL", "SELECT ip, godziny FROM `noc` WHERE ip='99.999.999.99:27015'");
}

public NocSQL(FailState, Handle:Query, Error[], Errcode, Data[], DataSize)
{	
	//Check for errors and then process loading from table queries
	if ( FailState )
	{
		if ( FailState == TQUERY_CONNECT_FAILED )
		{
			log_amx("Load - Could not connect to SQL database.  [%d] %s", Errcode, Error);
		}
		else if ( FailState == TQUERY_QUERY_FAILED )
		{
			log_amx("Load Query failed. [%d] %s", Errcode, Error);
		}

		return;
	}

	if ( !SQL_NumResults(Query) ) // No more results - User not found, create them a blank entry in the table. and zero their variables
	{
		godziny = 0;
		
		SQL_ThreadQuery(g_SqlTupleNoc, "QueryHandle", "INSERT INTO noc VALUES('99.999.999.99:27015','0')");
		return;
	}

	godziny = SQL_ReadResult(Query, 0);
}

 
Nie działa (pobieranie IP serwera):



public noc_load()
{
	get_user_ip(0, ipserwera, 32);
	
	new ipserva[33];
	copy(ipserva, charsmax(ipserva), ipserwera);
	replace_all(ipserva, charsmax(ipserva), "'", "\'" );
	
	g_SqlTupleNoc = SQL_MakeDbTuple("stroba.pl", "baza", "haslo", "tabela");
	SQL_ThreadQuery(g_SqlTupleNoc, "NocSQL", "SELECT ip, godziny FROM `noc` WHERE ip='%s'", ipserva);
}

public NocSQL(FailState, Handle:Query, Error[], Errcode, Data[], DataSize)
{	
	//Check for errors and then process loading from table queries
	if ( FailState )
	{
		if ( FailState == TQUERY_CONNECT_FAILED )
		{
			log_amx("Load - Could not connect to SQL database.  [%d] %s", Errcode, Error);
		}
		else if ( FailState == TQUERY_QUERY_FAILED )
		{
			log_amx("Load Query failed. [%d] %s", Errcode, Error);
		}

		return;
	}

	if ( !SQL_NumResults(Query) ) // No more results - User not found, create them a blank entry in the table. and zero their variables
	{
		godziny = 0;

		get_user_ip(0, ipserwera, 32);
		
		new ipserva[33];
		copy(ipserva, charsmax(ipserva), ipserwera);
		replace_all(ipserva, charsmax(ipserva), "'", "\'" );
		
		SQL_ThreadQuery(g_SqlTupleNoc, "QueryHandle", "INSERT INTO noc VALUES('%s','0')", ipserva);
		return;
	}

	godziny = SQL_ReadResult(Query, 0);
}

Użytkownik Danny OK edytował ten post 26.02.2014 16:26

  • +
  • -
  • 0

Battlefield 2 Exp Mod

www.BF2Mod.pl


#2 Ogen Dogen

    Guru

  • Power User

Reputacja: 222
Profesjonalista

  • Postów:713
  • GG:
  • Steam:steam
  • Imię:Marcin
  • Lokalizacja:Dąbrowa Górnicza
Offline

Napisano 26.02.2014 16:26

A po co ci kopiowanie do 2 tablicy jak możesz pracować na jednej i podmiana znaków ? Raczej nie ma szansy żeby tam wystąpił cudzysłów ;)


  • +
  • -
  • 0

b_350_20_360204_C20008_FFFFFF_000000.png 193.33.176.115:27015

 

94e23d811c.png

 


#3 Danny OK

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 12
Początkujący

  • Postów:148
  • GG:
  • Steam:steam
  • Imię:Daniel
  • Lokalizacja:Internet
Offline

Napisano 26.02.2014 16:27

Ale to i tak nie zmienia faktu, że nie chce wyszukiwać IP. Było bez tego i nie działa więc próbowałem tak :D


  • +
  • -
  • 0

Battlefield 2 Exp Mod

www.BF2Mod.pl


#4 GwynBleidD

    Godlike

  • Administrator

Reputacja: 1849
Godlike

  • Postów:3066
  • Steam:steam
  • Lokalizacja:Przemyśl
Offline

Napisano 26.02.2014 20:03   Najlepsza odpowiedź

Nie działa, bo SQL_ThreadQuery nie posiada formatowania stringa. Musisz to zrobić wcześniej funkcją format lub innym jej odpowiednikiem.


  • +
  • -
  • 1
NIE pomagam na PW. Nie trudź się, na zlecenia nie odpiszę... Od pomagania jest forum.
NIE zaglądam w tematy wysłane na PW. Jeśli są na forum to prędzej czy później je przeczytam. Jeśli mam co w nich odpisać, to odpiszę.
 
1988650.png?theme=dark




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

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