Szerző Téma: Mysql függvény hiba  (Megtekintve 919 alkalommal)

Mysql függvény hiba
« Dátum: 2012. február 09. - 21:20:05 »
0 Show voters
Sziasztok!
2-3 napja feltettem egy kérdést, kaptam is rá választ, azt hittem úgy menni fog, de végül nem sikerült.
Már sok féle módon próbáltam megoldani, de nem sikerül.
Ahelyett, hogy elmagyaráznám, milyen függvény, inkább bemásolom, így érthetõbb is lesz.
 
stock GetData(tabla[], tipus, mezo[], feltetelmezo[], ertek[])
{
format(query, 256, \"SELECT %s FROM `%s` WHERE %s = \'%s\'\", mezo,tabla,feltetelmezo,ertek);
mysql_query(query);
mysql_store_result();
mysql_fetch_row(sor);
mysql_free_result();
new tarolo[256];
    sscanf(sor, \"s[256]\", tarolo);
switch(tipus)
{
case 1: {return tarolo;}
case 2: {return strval(tarolo);}
case 3: {return floatstr(tarolo);}
case 4: {return boolstr(tarolo);}
}
}

 

case 1: {return tarolo;} // ez nem tartozik a hibásak közé, csak gondoltam a switch minden tagját bemásolom.
109 - case 2: {return strval(tarolo);}
110 - case 3: {return floatstr(tarolo);}
111 - case 4: {return boolstr(tarolo);}

 
Ezek a sorok kapnak errort:
 
109 - error 079: inconsistent return types (array & non-array)
110 - error 079: inconsistent return types (array & non-array)
111 - error 079: inconsistent return types (array & non-array)

 
Nem tudom mi lehet a gond, csak gondolom, hogy a visszatérések nem jók, de már nagyon sokféle képpen próbáltam. Ahol használom ott a tipus nem felel meg a vártnak.
Ja és lenne még egy kérdésem.
Mit lehet ellene tenni, ha a SpawnPlayer kickel?
« Utoljára szerkesztve: 2012. február 09. - 21:35:48 írta mauladam »

Nem elérhető DrAkE

  • 2078
    • Profil megtekintése
Mysql függvény hiba
« Válasz #1 Dátum: 2012. február 09. - 21:52:32 »
0 Show voters
Idézetet írta: mauladam date=1328818805\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"16807\" data-ipsquote-contentclass=\"forums_Topic
Sziasztok!
2-3 napja feltettem egy kérdést, kaptam is rá választ, azt hittem úgy menni fog, de végül nem sikerült.
Már sok féle módon próbáltam megoldani, de nem sikerül.
Ahelyett, hogy elmagyaráznám, milyen függvény, inkább bemásolom, így érthetõbb is lesz.
 
stock GetData(tabla[], tipus, mezo[], feltetelmezo[], ertek[])
{
format(query, 256, \"SELECT %s FROM `%s` WHERE %s = \'%s\'\", mezo,tabla,feltetelmezo,ertek);
mysql_query(query);
mysql_store_result();
mysql_fetch_row(sor);
mysql_free_result();
new tarolo[256];
    sscanf(sor, \"s[256]\", tarolo);
switch(tipus)
{
case 1: {return tarolo;}
case 2: {return strval(tarolo);}
case 3: {return floatstr(tarolo);}
case 4: {return boolstr(tarolo);}
}
}

 

case 1: {return tarolo;} // ez nem tartozik a hibásak közé, csak gondoltam a switch minden tagját bemásolom.
109 - case 2: {return strval(tarolo);}
110 - case 3: {return floatstr(tarolo);}
111 - case 4: {return boolstr(tarolo);}

 
Ezek a sorok kapnak errort:
 
109 - error 079: inconsistent return types (array & non-array)
110 - error 079: inconsistent return types (array & non-array)
111 - error 079: inconsistent return types (array & non-array)

 
Nem tudom mi lehet a gond, csak gondolom, hogy a visszatérések nem jók, de már nagyon sokféle képpen próbáltam. Ahol használom ott a tipus nem felel meg a vártnak.
Ja és lenne még egy kérdésem.
Mit lehet ellene tenni, ha a SpawnPlayer kickel?
 


stock GetData(tabla[], tipus[], mezo[], feltetelmezo[], ertek[])
{
format(query, 256, \"SELECT %s FROM `%s` WHERE %s = \'%s\'\", mezo,tabla,feltetelmezo,ertek);
mysql_query(query);
mysql_store_result();
mysql_fetch_row(sor);
mysql_free_result();
new tarolo[256];
sscanf(sor, \"s[256]\", tarolo);
switch(tipus[0])
{
case \'s\': return format(tarolo, sizeof(tarolo), \"%s\", tarolo);
case \'d\', \'i\': return format(tarolo, sizeof(tarolo), \"%d\", strval(tarolo));
case \'f\': return format(tarolo, sizeof(tarolo), \"%f\", floatstr(tarolo));
case \'b\': return format(tarolo, sizeof(tarolo), \"%b\", boolstr(tarolo));
}
return 1;
}
« Utoljára szerkesztve: 2012. február 09. - 22:02:38 írta DrAkE »

Nem elérhető tonyo

  • 1335
  • Moderális Generátor
    • Profil megtekintése
Mysql függvény hiba
« Válasz #2 Dátum: 2012. február 09. - 21:55:59 »
0 Show voters
Mit lehet ellene tenni, ha a SpawnPlayer kickel?[/quote]
Ki lehet játszani. A pontos menetre most nem emlékszem, de meg lehet csinálni, nekem már sikerült. Vmelyik nap láttam hivatalos fórumon egy leírást(sajna linket nem mentettem), hogy mit mivel kombinálva kapsz kicket, és az alapján ki lehet logikázni. Én is logikáztam, és nagy nehezen meg sikerült oldani...(bár akk még nem találtam rá erre a leírásra).

Nem elérhető kurta999

  • 2759
  • Éllő fédisznó
    • Profil megtekintése
Mysql függvény hiba
« Válasz #3 Dátum: 2012. február 09. - 22:02:08 »
0 Show voters
Akkor kickel, ha a skinválasztás elõtt lespawnolod SpawnPlayer()-al.
Ezt úgy lehet megelõzni, hogya SpawPlayer() használata elõtt meghívod a SetSpawnInfo()-t. (Mondjuk az OnPlayerConnect-nél, vagy ha így nemjó, akkor rögtön a SpawnPlayer() elõtt)

Mysql függvény hiba
« Válasz #4 Dátum: 2012. február 09. - 22:16:32 »
0 Show voters
Köszönöm mindenkinek a segítséget!
Még 1 hiba történt a végén:
 error 035: argument type mismatch (argument 1)

 
Sor:
if(!strcmp(GetData(\"jatekosok\", \"s\", \"jelszo\", \"nev\", PlayerName(playerid)), MD5_Hash(inputtext))){

Nem elérhető DrAkE

  • 2078
    • Profil megtekintése
Mysql függvény hiba
« Válasz #5 Dátum: 2012. február 09. - 22:24:55 »
0 Show voters
Idézetet írta: mauladam date=1328822192\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"16807\" data-ipsquote-contentclass=\"forums_Topic
Köszönöm mindenkinek a segítséget!
Még 1 hiba történt a végén:
 error 035: argument type mismatch (argument 1)

 
Sor:
if(!strcmp(GetData(\"jatekosok\", \"s\", \"jelszo\", \"nev\", PlayerName(playerid)), MD5_Hash(inputtext))){

 

Csak ismételni tudom magam :D
 

stock GetData(tabla[], tipus, mezo[], feltetelmezo[], ertek[])
{
format(query, 256, \"SELECT %s FROM `%s` WHERE %s = \'%s\'\", mezo,tabla,feltetelmezo,ertek);
mysql_query(query);
mysql_store_result();
mysql_fetch_row(sor);
mysql_free_result();
new tarolo[256];
    sscanf(sor, \"s[256]\", tarolo);
switch(tipus)
{
case 1: {return tarolo;}
case 2: {return strval(tarolo);}
case 3: {return floatstr(tarolo);}
case 4: {return boolstr(tarolo);}
}
}

 

case 1: {return tarolo;} // ez nem tartozik a hibásak közé, csak gondoltam a switch minden tagját bemásolom.
109 - case 2: {return strval(tarolo);}
110 - case 3: {return floatstr(tarolo);}
111 - case 4: {return boolstr(tarolo);}

 
Ezek a sorok kapnak errort:
 
109 - error 079: inconsistent return types (array & non-array)
110 - error 079: inconsistent return types (array & non-array)
111 - error 079: inconsistent return types (array & non-array)

 
Nem tudom mi lehet a gond, csak gondolom, hogy a visszatérések nem jók, de már nagyon sokféle képpen próbáltam. Ahol használom ott a tipus nem felel meg a vártnak.
Ja és lenne még egy kérdésem.
Mit lehet ellene tenni, ha a SpawnPlayer kickel?
 


stock GetData(tabla[], tipus[], mezo[], feltetelmezo[], ertek[])
{
format(query, 256, \"SELECT %s FROM `%s` WHERE %s = \'%s\'\", mezo,tabla,feltetelmezo,ertek);
mysql_query(query);
mysql_store_result();
mysql_fetch_row(sor);
mysql_free_result();
new tarolo[256];
sscanf(sor, \"s[256]\", tarolo);
switch(tipus[0])
{
case \'s\': return format(tarolo, sizeof(tarolo), \"%s\", tarolo);
case \'d\', \'i\': return format(tarolo, sizeof(tarolo), \"%d\", strval(tarolo));
case \'f\': return format(tarolo, sizeof(tarolo), \"%f\", floatstr(tarolo));
case \'b\': return format(tarolo, sizeof(tarolo), \"%b\", boolstr(tarolo));
}
return 1;
}

 
Gondolom a \"tipus\" változó miatt lesz.

Mysql függvény hiba
« Válasz #6 Dátum: 2012. február 09. - 22:26:59 »
0 Show voters
Ez van bemásolva.

Dupla hozzászólás automatikusan összefûzve. ( 2012. február 11. - 20:04:46 )

Mostmár tényleg nem tudom, mi lehet a baja, 2 napig próbálkoztam mindennel...  :(
« Utoljára szerkesztve: 2012. február 11. - 20:04:46 írta mauladam »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal