Szerző Téma: MySQL frakció lekérés táblázatból  (Megtekintve 2935 alkalommal)

MySQL frakció lekérés táblázatból
« Dátum: 2017. június 19. - 12:16:54 »
0 Show voters
Sziasztok! Egy olyan problémám lenne, hogy a frakció betöltésekor nem történik semmi, logban azt írja hogy successful de nem lesz semmi.
 
A kód:
 


func LoadFractions()
{
    new nums, fields;
    cache_get_data(nums, fields);
    if(nums > 0)
    {
        for(new i = 0; i < nums; i++)
        {
            fInfo[fVan] = bool:cache_get_field_content_int(i,\"exist\");
            fInfo[fDBID] = cache_get_field_content_int(i,\"dbid\");
            cache_get_field_content(i,\"name\",fInfo[fName]);
            cache_get_field_content(i,\"short_name\",fInfo[fSName]);
            fInfo[fMaxMembers] = cache_get_field_content_int(i,\"maxmembers\");
            fInfo[fType] = cache_get_field_content_int(i,\"type\");
        }
    }
}

MySQL frakció lekérés táblázatból
« Válasz #1 Dátum: 2017. június 23. - 11:27:48 »
0 Show voters
Valaki tudna segíteni?

MySQL frakció lekérés táblázatból
« Válasz #2 Dátum: 2017. június 23. - 11:38:21 »
0 Show voters
Ennyi információból sokat nemtudunk meg, add meg azt a kódot, ahol lekérdezed a frakció betöltést, mert nyílván ottvan gebasz.

MySQL frakció lekérés táblázatból
« Válasz #3 Dátum: 2017. június 23. - 11:38:59 »
0 Show voters
mysql_tquery(mysql_id, \"SELECT * FROM fractions\",     \"LoadFractions\",         \"\");

MySQL frakció lekérés táblázatból
« Válasz #4 Dátum: 2017. június 23. - 11:47:17 »
0 Show voters
Sajnos nincs ötletem, mivel ez a két kód nem hibás. Próbáld meg frissíteni a plugint.
 
Az táblában vannak adatok? Illetve próbáld meg debuggoltatni.
 
Amikor a ciklus elindul, konzolba printf-eld ki, a sorszámot, ha kiirja, akkor a betöltéssel van a gond, ha nem akkor meg a lekdezéssel.

MySQL frakció lekérés táblázatból
« Válasz #5 Dátum: 2017. június 23. - 11:56:43 »
0 Show voters
Pluginból R39-et használok.
 
Log:
 
[11:48:39] Frakció betöltve! DBID: 1
[11:48:40] Frakció betöltve! DBID: 2
 
MySQL tábla:
 
\"mysql_Tabla.jpg\"

MySQL frakció lekérés táblázatból
« Válasz #6 Dátum: 2017. június 23. - 11:58:36 »
0 Show voters
Próbáld meg azt, hogy miután betölti, ki printelteted a változók értékét, és arról is küldj egy képet legyél szives.
 
Megpróbálok rájönni mibaja.

MySQL frakció lekérés táblázatból
« Válasz #7 Dátum: 2017. június 23. - 12:00:38 »
0 Show voters
[11:54:13] Frakció betöltve! DBID: 1 | Név:  | Rövid név:
[11:54:13] Frakció betöltve! DBID: 2 | Név:  | Rövid név:

MySQL frakció lekérés táblázatból
« Válasz #8 Dátum: 2017. június 23. - 12:01:14 »
0 Show voters
Az inteket is kérlek
 
 

MySQL frakció lekérés táblázatból
« Válasz #9 Dátum: 2017. június 23. - 12:04:09 »
0 Show voters
[11:57:45] Frakció betöltve! DBID: 1 | Név:  | Rövid név:  | Maximum létszám: 20 | Típus: 1
[11:57:45] Frakció betöltve! DBID: 2 | Név:  | Rövid név:  | Maximum létszám: 20 | Típus: 2
 
 

MySQL frakció lekérés táblázatból
« Válasz #10 Dátum: 2017. június 23. - 12:08:02 »
+1 Show voters
Megvan a probléma. Az R39-es verzióban, a string betöltéshez meg kell adni a connectionHandle-t illetve a maximum hosszúságot.
 
Mint te is látod, az inteket betöltötte, tehát a stringgel van a baj.
 

cache_get_field_content(row, const field_name[], destination[], connectionHandle = 1, max_len = sizeof(destination))

 
Ez alapján a kódod:
 

cache_get_field_content(i,\"name\",fInfo[i][fName],mysql_id,sizeof(fInfo[i][fName]));
cache_get_field_content(i,\"short_name\",fInfo[i][fSName],mysql_id,sizeof(fInfo[i][fName]));

 
Amennyiben, a sizeof(változóneve) nem müködne, használj számokat pl.
 

cache_get_field_content(i,\"name\",fInfo[i][fName],mysql_id,64);
cache_get_field_content(i,\"short_name\",fInfo[i][fSName],mysql_id,16);

 
 

MySQL frakció lekérés táblázatból
« Válasz #11 Dátum: 2017. június 23. - 12:13:14 »
0 Show voters
Igen, most lekéri viszont egy olyan probléma még feláll, hogy a hosszú magánhangzók helyett ?-t kapok. Ezt hogyan oldjam meg?

MySQL frakció lekérés táblázatból
« Válasz #12 Dátum: 2017. június 23. - 12:16:15 »
0 Show voters
Ha Notepad-ban dolgozol, akkor a kódolást kell átállítani, ha nem akkor próbáld meg a fixchars.inc-et használni.

MySQL frakció lekérés táblázatból
« Válasz #13 Dátum: 2017. június 23. - 12:17:53 »
0 Show voters
Pawno-ban csinálom a módot, és fixchars bent van

MySQL frakció lekérés táblázatból
« Válasz #14 Dátum: 2017. június 23. - 12:22:28 »
0 Show voters
Akkor a MySQL adatbázisban a Charset-et állítsd be UTF-8-ra

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal