Szerző Téma: MySQL lekérdezés eredményének tárolása  (Megtekintve 999 alkalommal)

Nem elérhető 1Mark6

  • 437
    • Profil megtekintése
MySQL lekérdezés eredményének tárolása
« Dátum: 2016. június 17. - 22:35:17 »
0 Show voters
Sziasztok !
Az lenne a kérdésem, hogy amikor a lekérdezés lefut, és van eredmény, hogy azt hogyan tudom változóba tárolni.
Nyilván vannak ezek a kódok :
 
cache_get_field_content/int/float //stb.

 
De én nem erre gondoltam, hanem példa :
 
SELECT Nev FROM jatekosok WHERE Admin = \'Tulajdonos\'

 
És ilyenkor lefut a kód, és nekem a Név kellene, ami a lekérdezés eredménye lenne, de nemtudom, hogy azt, hogyan szerezzem meg.

MySQL lekérdezés eredményének tárolása
« Válasz #1 Dátum: 2016. június 18. - 08:08:10 »
0 Show voters
mysql_tquery(MySQL,\"SELECT `Nev` = \'%s\' FROM jatekosok WHERE Admin = \'Tulajdonos\'\");

 
Próbáld meg ezt. (Nem biztos hogy jó, még én is kezdő vagyok a MySQL-ben.)

Nem elérhető 1Mark6

  • 437
    • Profil megtekintése
MySQL lekérdezés eredményének tárolása
« Válasz #2 Dátum: 2016. június 18. - 09:18:12 »
0 Show voters
Na és ezt, hogy tárolom változóba ? :D
Igazából amihez kéne nekem, az egy Inventory rendszer, ahonnan az ItemLista táblátból kéne kiolvasni az objectet.
 
SELECT Objekt FROM Itemlista WHERE ItemNev = \'Kenyér\'

 
És akkor callback-be megkapom az eredményt, és azt kéne valahogy eltárolni
 
mysql_tquery(SQL,query,\"ObjektLekerdezes\",\"d\",playerid);
public ObjektLekerdezes(playerid)
{
     new objekt = eredmeny;
}

 
Valahogy így képzeltem el, de nyilván van szakszerű megoldása, ez csak egy sablon, hogy így kéne kinéznie, csak a megfelelő utasítást nemtudom amivel tárolni tudom a lekérdezés eredményét.

MySQL lekérdezés eredményének tárolása
« Válasz #3 Dátum: 2016. június 18. - 09:46:42 »
0 Show voters
De most hogy akarod? Hogy beírsz egye parancsot és kiírja mennyi kenyered van?  Nem értettelek meg rendesen.
( amúgy a mysql lekérdezésnél a select és a query az ObjektLekerdezest egy sorba is megbirod igy oldani: )
mysql_tquery(MySQL,\"SELECT Objekt FROM Itemlista WHERE ItemNev = \'Kenyér\'\",\"ObjektLekerdezes\",\"d\",playerid);

 
én igy szoktam használni.
« Utoljára szerkesztve: 2016. június 18. - 09:56:32 írta GameKinger »

Nem elérhető 1Mark6

  • 437
    • Profil megtekintése
MySQL lekérdezés eredményének tárolása
« Válasz #4 Dátum: 2016. június 18. - 10:00:20 »
0 Show voters
Nyilván meg lehet oldani 1 sorba is de ha nemtudom konkrétan egy változó értékét, olyankor kell formázni.
És azt szeretném, hogy az Itemlistáról kiolvassa a Kenyér item, objektjét, és azt egy változóba eltárolja.

MySQL lekérdezés eredményének tárolása
« Válasz #5 Dátum: 2016. június 18. - 10:09:20 »
+1 Show voters
CMD:myitems(playerid, params[]) 
{
    new query[128];
    mysql_format(mysql, query, sizeof(query), \"SELECT ItemID FROM inventory WHERE Userid=%d\", PlayerInfo[playerid][pID]);
    mysql_tquery(mysql, query, \"myitems\", \"i\", playerid);
    return 1;
}
forward myitems(playerid);
public myitems(playerid)
{
    new itemid;
    for(new i, j = cache_get_row_count(mysql); i < j; i++)
    {
        itemid                 = cache_get_row_int(i, 0, mysql);
        SendClientMessage(playerid, -1, \"ItemID: %d \", itemid);
    }
    return 1;

 
Valami hasonlóra gondoltál? (Ezt a hiv. samp fórumon találtam.)
Lényegében itt kiirja az objetkt idét, de ha innen kéred le az item id változóval akkor szerintem az amit kértél csak itt ki is ijra a chatbe.
« Utoljára szerkesztve: 2016. június 18. - 10:13:29 írta GameKinger »

Nem elérhető 1Mark6

  • 437
    • Profil megtekintése
MySQL lekérdezés eredményének tárolása
« Válasz #6 Dátum: 2016. június 18. - 10:14:31 »
0 Show voters
Ez segitett, köszönöm :D

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal