hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.03.29. 00:55



Jelenlévő felhasználók

Jelenleg 212 felhasználó van jelen :: 1 regisztrált, 0 rejtett és 211 vendég

A legtöbb felhasználó (1565 fő) 2020.11.21. 11:26-kor tartózkodott itt.

Regisztrált felhasználók: Google [Bot] az elmúlt 5 percben aktív felhasználók alapján

Utoljára aktív
Ahhoz hogy lásd ki volt utoljára aktív, be kell jelentkezned.



Az oldal teljeskörű
használatához regisztrálj.

Regisztráció

Kereső


Új téma nyitása  Hozzászólás a témához  [ 8 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: SQL hiba
HozzászólásElküldve: 2018.03.25. 21:06 
Offline
Senior Tag
Avatar

Csatlakozott: 2018.02.01. 16:27
Hozzászólások: 225
Megköszönt másnak: 14 alkalommal
Megköszönték neki: 18 alkalommal
Helló!

Táblát létrehozza, de nem menti el a dolgokat, javítható ?. (SZERKESZTVE)

Előre is köszönöm a válaszokat! :)

  1. public plugin_cfg() {
  2.     new Query[512];
  3.     g_SqlTuple = SQL_MakeDbTuple(SQL_INFO[0],SQL_INFO[1],SQL_INFO[2],SQL_INFO[3])
  4.    
  5.     formatex(Query, charsmax(Query), "CREATE TABLE IF NOT EXISTS `rivals_furien` (`username` varchar(32) NOT NULL,`XP` int(11) NOT NULL,`SZINT` int(11) NOT NULL,`OLES` int(11) NOT NULL,`PONT` int(11) NOT NULL,`id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY)")
  6.     SQL_ThreadQuery(g_SqlTuple,"createTableThread", Query)
  7. }
  8.  
  9. public createTableThread(FailState, Handle:Query, Error[], Errcode, Data[], DataSize, Float:Queuetime) {
  10.     if(FailState == TQUERY_CONNECT_FAILED)
  11.         set_fail_state("Nem tudtam csatlakozni az adatbazishoz.");
  12.     else if(FailState == TQUERY_QUERY_FAILED)
  13.         set_fail_state("Query Error");
  14.     if(Errcode)
  15.         log_amx("Hibat dobtam: %s",Error);
  16. }
  17.  
  18. public client_putinserver(id) {
  19.     if(!is_user_bot(id)) {
  20.         get_user_name(id, name[id], charsmax(name))
  21.         load(id)
  22.     }
  23. }
  24.  
  25. public load(id) {
  26.     new Query[512], Data[1]
  27.     Data[0] = id
  28.     formatex(Query, charsmax(Query), "SELECT * FROM `rivals_furien` WHERE username = ^"%s^";", name[id])
  29.     SQL_ThreadQuery(g_SqlTuple, "QuerySelectData", Query, Data, 1)
  30. }
  31.  
  32. public QuerySelectData(FailState, Handle:Query, Error[], Errcode, Data[], DataSize, Float:Queuetime) {
  33.     if(FailState == TQUERY_CONNECT_FAILED || FailState == TQUERY_QUERY_FAILED) {
  34.         log_amx("%s", Error)
  35.         return
  36.     }
  37.     else {
  38.         new id = Data[0];
  39.  
  40.         if(SQL_NumRows(Query) > 0) {
  41.         Xp[id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "XP"))
  42.         Szint[id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "SZINT"))
  43.         Oles[id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "OLES"))
  44.         Pont[id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "PONT"))
  45.  
  46.            
  47.         }
  48.         else {
  49.             save(id)
  50.         }
  51.     }
  52. }
  53.  
  54. public save(id) {
  55.     new text[512];
  56.     formatex(text, charsmax(text), "INSERT INTO `rivals_furien` (`username`) VALUES (^"%s^");", name[id])
  57.     SQL_ThreadQuery(g_SqlTuple, "QuerySetData", text)
  58. }
  59.  
  60. public QuerySetData(FailState, Handle:Query, Error[], Errcode, Data[], DataSize, Float:Queuetime) {
  61.     if(FailState == TQUERY_CONNECT_FAILED || FailState == TQUERY_QUERY_FAILED) {
  62.         log_amx("%s", Error)
  63.         return
  64.     }
  65. }
  66.  
  67. public update(id) {
  68.     new text[512];
  69.     formatex(text, charsmax(text), "UPDATE `rivals_furien` SET XP = ^"%i^" SET SZINT = ^"%i^" SET OLES = ^"%i^" SET PONT = ^"%i^" WHERE username = ^"%s^";", Xp[id], Szint[id], Oles[id], Pont[id], name[id])
  70.     SQL_ThreadQuery(g_SqlTuple, "QuerySetData", text)
  71. }
  72.  
  73. public client_disconnect(id) {
  74.     if(!is_user_bot(id)) {
  75.         update(id)
  76.     }
  77.    
  78.     Xp[id] = 0
  79.     Szint[id] = 0
  80.     Oles[id] = 0
  81.     Pont[id] = 0
  82.    
  83.     copy(name[id], charsmax(name[]), "")
  84. }
  85.  
  86. public plugin_end() {
  87.     SQL_FreeHandle(g_SqlTuple)
  88. }


A hozzászólást 1 alkalommal szerkesztették, utoljára Tomii 2018.03.26. 16:17-kor.

Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: SQL hiba
HozzászólásElküldve: 2018.03.26. 08:54 
Offline
Fórum Moderátor
Avatar

Csatlakozott: 2014.05.01. 13:18
Hozzászólások: 627
Megköszönt másnak: 61 alkalommal
Megköszönték neki: 104 alkalommal
Ha egy mezőben szeretnél tárolni minden értéket, akkor eleve szövegként kell kezelned és a betöltéskor tördelned. Ha meg külön-külön oszlopban (ajánlom), akkor meg annyit is kell létrehozni neki.


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: SQL hiba
HozzászólásElküldve: 2018.03.26. 16:18 
Offline
Senior Tag
Avatar

Csatlakozott: 2018.02.01. 16:27
Hozzászólások: 225
Megköszönt másnak: 14 alkalommal
Megköszönték neki: 18 alkalommal
JohanCorn írta:
Ha egy mezőben szeretnél tárolni minden értéket, akkor eleve szövegként kell kezelned és a betöltéskor tördelned. Ha meg külön-külön oszlopban (ajánlom), akkor meg annyit is kell létrehozni neki.


Szerkesztve, de még most is ugyan az, csatoltam az újat.


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: SQL hiba
HozzászólásElküldve: 2018.03.27. 14:04 
Offline
Jómunkásember
Avatar

Csatlakozott: 2016.02.10. 12:46
Hozzászólások: 429
Megköszönt másnak: 61 alkalommal
Megköszönték neki: 157 alkalommal
Üdv. Cseréld le az "update" függvényedet erre:

  1. public update(id)
  2. {
  3.     new Query[512], Len;
  4.    
  5.     Len += formatex(Query[Len], charsmax(Query), "UPDATE `rivals_furien` SET ");
  6.     Len += formatex(Query[Len], charsmax(Query)-Len, "XP = %i, ",Xp[id]);
  7.     Len += formatex(Query[Len], charsmax(Query)-Len, "SZINT = %i, ",Szint[id]);
  8.     Len += formatex(Query[Len], charsmax(Query)-Len, "OLES = %i, ",Oles[id]);
  9.     Len += formatex(Query[Len], charsmax(Query)-Len, "PONT = %i ",Pont[id]);
  10.     Len += formatex(Query[Len], charsmax(Query)-Len, "WHERE username  = ^"%s^";",name[id]);
  11.      
  12.     SQL_ThreadQuery(g_SqlTuple, "QuerySetData", Query);
  13. }


Az hibásan volt megírva. Ez kicsit átláthatóbb. Ha továbbra sem müködik, akkor írd le ide, hogy mit ír a logba.


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: SQL hiba
HozzászólásElküldve: 2018.03.27. 17:03 
Offline
Senior Tag
Avatar

Csatlakozott: 2018.02.01. 16:27
Hozzászólások: 225
Megköszönt másnak: 14 alkalommal
Megköszönték neki: 18 alkalommal
Dooz írta:
Üdv. Cseréld le az "update" függvényedet erre:

  1. public update(id)
  2. {
  3.     new Query[512], Len;
  4.    
  5.     Len += formatex(Query[Len], charsmax(Query), "UPDATE `rivals_furien` SET ");
  6.     Len += formatex(Query[Len], charsmax(Query)-Len, "XP = %i, ",Xp[id]);
  7.     Len += formatex(Query[Len], charsmax(Query)-Len, "SZINT = %i, ",Szint[id]);
  8.     Len += formatex(Query[Len], charsmax(Query)-Len, "OLES = %i, ",Oles[id]);
  9.     Len += formatex(Query[Len], charsmax(Query)-Len, "PONT = %i ",Pont[id]);
  10.     Len += formatex(Query[Len], charsmax(Query)-Len, "WHERE username  = ^"%s^";",name[id]);
  11.      
  12.     SQL_ThreadQuery(g_SqlTuple, "QuerySetData", Query);
  13. }


Az hibásan volt megírva. Ez kicsit átláthatóbb. Ha továbbra sem müködik, akkor írd le ide, hogy mit ír a logba.


Helló!

  1. L 03/27/2018 - 17:01:53: [MySQL] Invalid column: -1
  2. L 03/27/2018 - 17:01:53: [AMXX] Displaying debug trace (plugin "furien_menu.amxx")
  3. L 03/27/2018 - 17:01:53: [AMXX] Run time error 10: native error (native "SQL_ReadResult")
  4. L 03/27/2018 - 17:01:53: [AMXX]    [0] furien_menu.sma::QuerySelectData (line 305)


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: SQL hiba
HozzászólásElküldve: 2018.03.27. 19:13 
Offline
Fórum Moderátor
Avatar

Csatlakozott: 2014.05.01. 13:18
Hozzászólások: 627
Megköszönt másnak: 61 alkalommal
Megköszönték neki: 104 alkalommal
Van egy oszlop aminek elírtad a nevét, vagy még csak hasonlót létre sem hoztál az adatbázisban.


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: SQL hiba
HozzászólásElküldve: 2018.03.27. 19:16 
Offline
Jómunkásember
Avatar

Csatlakozott: 2016.02.10. 12:46
Hozzászólások: 429
Megköszönt másnak: 61 alkalommal
Megköszönték neki: 157 alkalommal
JohanCorn írta:
Van egy oszlop aminek elírtad a nevét, vagy még csak hasonlót létre sem hoztál az adatbázisban.

A táblával volt a gond, nem volt jól létrehozva, illetve egy-két parányi dolog a forrásban, de most müködik.

Ők köszönték meg Dooz nek ezt a hozzászólást: Tomii (2018.03.27. 19:17)
  Népszerűség: 2.27%


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: SQL hiba
HozzászólásElküldve: 2018.03.27. 19:17 
Offline
Senior Tag
Avatar

Csatlakozott: 2018.02.01. 16:27
Hozzászólások: 225
Megköszönt másnak: 14 alkalommal
Megköszönték neki: 18 alkalommal
Dooz írta:
JohanCorn írta:
Van egy oszlop aminek elírtad a nevét, vagy még csak hasonlót létre sem hoztál az adatbázisban.

A táblával volt a gond, nem volt jól létrehozva, illetve egy-két parányi dolog a forrásban, de most müködik.


Köszönöm még 1x :)


Hozzászólás jelentése
Vissza a tetejére
   
Hozzászólások megjelenítése:  Rendezés  
Új téma nyitása  Hozzászólás a témához  [ 8 hozzászólás ] 


Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 14 vendég


Nyithatsz új témákat ebben a fórumban.
Válaszolhatsz egy témára ebben a fórumban.
Nem szerkesztheted a hozzászólásaidat ebben a fórumban.
Nem törölheted a hozzászólásaidat ebben a fórumban.
Nem küldhetsz csatolmányokat ebben a fórumban.

Keresés:
Ugrás:  
Powered by phpBB® Forum Software © phpBB Limited
Magyar fordítás © Magyar phpBB Közösség
Portal: Kiss Portal Extension © Michael O'Toole