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

SQL - wczytywanie danych


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
3 odpowiedzi w tym temacie

#1 KariiO

    Super Hero

  • Power User

Reputacja: 396
Wszechpomocny

  • Postów:1 133
  • GG:
  • Imię:Korneliusz
  • Lokalizacja:Cieszyn
Offline

Napisano 12.01.2013 17:06

Witam, ma ktoś pomysł dlaczego kod poniżej nie działa ?
Moduły i rzeczy typu dostęp itd są poprawne.


/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <engine>
#include <fakemeta>
#include <cstrike>
#include <fun>
#include <fakemeta_util>
#include <fakemeta>
#include <sqlx>
#include <csx>
#include <hamsandwich>
#include <colorchat>
#include <xs>
#include <tutorek>
#include <vault>

#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "KariiO"
new wybrana_klasa[33]
new sqlstart
new g_SqlTuple
new opis_klasy[512]

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say test","test")
register_cvar("diablo_sql_host","localhost",FCVAR_PROTECTED)
register_cvar("diablo_sql_user","root",FCVAR_PROTECTED)
register_cvar("diablo_sql_pass","root",FCVAR_PROTECTED)
register_cvar("diablo_sql_database","dbmod",FCVAR_PROTECTED)
register_cvar("diablo_sql_tableopisy","dbmod",FCVAR_PROTECTED)

sql_start()
}
new Race[8][18] = { "Brak", "Lowca", "Barbarzynca", "Bandyta", "Asasyn", "Vampir", "Zabojca", "Straznik"}

public sql_start()
{
if(sqlstart<0) return
sqlstart=1
new host[128]
new user[64]
new pass[64]
new database[64]
get_cvar_string("diablo_sql_database",database,63)
get_cvar_string("diablo_sql_host",host,127)
get_cvar_string("diablo_sql_user",user,63)
get_cvar_string("diablo_sql_pass",pass,63)

g_SqlTuple = SQL_MakeDbTuple(host,user,pass,database)


new g_sqlTable[64] = "dbmod_tables"
get_cvar_string("diablo_sql_tableopisy",g_sqlTable,63)

new q_command[512]
for(new i;i<8;i++)
format(q_command,511,"CREATE TABLE IF NOT EXISTS `OPISY` ( `%s` VARCHAR( 512 ), DEFAULT 1, `opis` VARCHAR( 512 ), DEFAULT 1) ",Race[i])

SQL_ThreadQuery(g_SqlTuple,"TableHandle",q_command)
}

public load_xp(id)
{
if(!is_user_bot(id))
{
new name[64]
new data[1]
data[0]=id



new q_command[512]
format(q_command,511,"SELECT * FROM `OPISY` WHERE `%s`='%s' ",Race[wybrana_klasa[id]],name)
SQL_ThreadQuery(g_SqlTuple,"SelectHandle",q_command,data,1)
}
else sql_start()
}

public SelectHandle(FailState,Handle:Query,Error[],Errcode,Data[],DataSize)
{
if(Errcode)
{
log_to_file("addons/amxmodx/logs/diablo.log","Error on load_xp query: %s",Error)
}
if(FailState == TQUERY_CONNECT_FAILED)
{
log_to_file("addons/amxmodx/logs/diablo.log","Could not connect to SQL database.")
return PLUGIN_CONTINUE
}
else if(FailState == TQUERY_QUERY_FAILED)
{
log_to_file("addons/amxmodx/logs/diablo.log","load_xp Query failed.")
return PLUGIN_CONTINUE
}

new id=Data[0]

new i,p
new klasy = 8-1
while(SQL_MoreResults(Query))
{
i = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "klasa"))
if (i>klasy) break


opis_klasy[id]= SQL_ReadResult(Query,SQL_FieldNameToNum(Query, "opis"))


SQL_NextRow(Query)
}


return PLUGIN_CONTINUE
}

public test(id) client_print(id,print_chat,"Test: %s,%i",opis_klasy[id],opis_klasy[id])

  • +
  • -
  • 0

#2 GwynBleidD

    Godlike

  • Przyjaciel

Reputacja: 1 869
Godlike

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

Napisano 12.01.2013 18:29

format(q_command,511,"CREATE TABLE IF NOT EXISTS `OPISY` ( `%s` VARCHAR( 512 ), DEFAULT 1, `opis` VARCHAR( 512 ), DEFAULT 1) ",Race[i]) 


A to co za koszmarek? Mam na myśli zapytanie... Czy Ty chcesz dla każdej klasy tworzyć nową tabelę? czy może nową kolumnę dla każdej z nich? Bo nie robisz ani tego, ani tego tak dla Twojej informacji... Robisz natomiast jakiś koszmar i niewiadomo co... Zastanów się co chcesz w tym miejscu osiągnąć...
  • +
  • -
  • 0

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


#3 KariiO

    Super Hero

  • Autor tematu
  • Power User

Reputacja: 396
Wszechpomocny

  • Postów:1 133
  • GG:
  • Imię:Korneliusz
  • Lokalizacja:Cieszyn
Offline

Napisano 12.01.2013 19:01

Nie miałem styczności z mysql itd.
Chce po prostu 7 kolumn z nazwami poszczegolnych klas a w danej kolumnie dać jeszcze opis klasie.
  • +
  • -
  • 0

#4 GwynBleidD

    Godlike

  • Przyjaciel

Reputacja: 1 869
Godlike

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

Napisano 13.01.2013 11:14

Noo i właśnie widać, że styczności z SQL nie miałeś żadnej...

PHP/Wstęp do baz danych - Wikibooks, biblioteka wolnych podręczników - dobry poradnik MySQL... co prawda jest to część kursu PHP, ale te lekcje nie mają nawiązania do PHP...
Zarządzamy serwerem baz danych - podobnie jak wyżej... Z lewej masz menu z dostępem do następnych części kursu
http://webmade.org/k.../kurs-mysql.php - również dobry kurs MySQL

Gdy się poduczysz to będziesz już wiedział jaki błąd zrobiłeś :)

Użytkownik GwynBleidD edytował ten post 13.01.2013 11:15

  • +
  • -
  • 0

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