Szerző Téma: MySQL adatbázisból lekérdezés. Hogy kell?  (Megtekintve 672 alkalommal)

MySQL adatbázisból lekérdezés. Hogy kell?
« Dátum: 2014. július 23. - 00:50:57 »
0 Show voters
Hello mindenki!
Az lenne a problémám, hogy egyszerûen nem bírom felfogni, hogy hogyan kell lekérdezni a szerverrõl.. Letöltöttem egy példát, de hiába, mert nem értem.
Pl.: A \"Users\" táblából kérdezze le egy int változóba a \"Regged\" mezõt, ha a játékos neve mondjuk \"X_Y\".
Ha valaki írna nekem egy példát rá(erre a lekérdezésre, amit feljebb írtam), magyarázattal, annak megköszönném! (csak a lekérdezésre kéne, csatlakozás meg egyéb dolog nélküli példára gondoltam)
Elõre is köszi!
« Utoljára szerkesztve: 2014. július 23. - 01:15:02 írta madaradam »

Nem elérhető AnthonyGates

  • 546
  • AnthonyGates
    • Profil megtekintése
MySQL adatbázisból lekérdezés. Hogy kell?
« Válasz #1 Dátum: 2014. július 23. - 02:01:01 »
0 Show voters
SELECT \'Regged\' FROM \'Users\' WHERE \'Nev\'=\'X_Y\';

MySQL adatbázisból lekérdezés. Hogy kell?
« Válasz #2 Dátum: 2014. július 23. - 02:03:02 »
0 Show voters
Kösz a választ!
Az (alap) SQL utasításokkal tisztában vagyok, de egy teljes példát írnál kérlek? Hogy lekérdezed és belerakod egy integer változóba. Cacheléssel, ha lehet. Mert én csak ezt nem értem, hogy hogyan kell. Köszi!
(Szerk.: bocs hogy nem írtam ezelõtt le ezt egyértelmûen :D)
« Utoljára szerkesztve: 2014. július 23. - 02:06:03 írta madaradam »

Nem elérhető KovaNovik

  • 1121
  • KovaNovik
    • Profil megtekintése
MySQL adatbázisból lekérdezés. Hogy kell?
« Válasz #3 Dátum: 2014. július 23. - 12:05:34 »
0 Show voters
Ott az SQL tutorialom erre. Btw:
 

//globálisan:
new connection; //ez tárolja a kapcsolat idjét, melyre a queryket akarjuk küldeni.
//ogmi, kapcsolódáskor:
connection = mysql_connect(...); //a kapcsolódáskor kapott id-t (a mysql_connect visszatérési értékét) eltároljuk.
//ahol ellenõrizni akarod:
new query[256]; //querynek létrehozunk egy stringet, amibe majd beleformázzuk a nevét.
mysql_format(kapcs, query, sizeof(query), \"SELECT Regged FROM Users WHERE Nev = \'%e\'\", JatekosInfo[playerid][Nev]); //ez egy sima format, csak az elejére kell a kapcsolat, és használható a %e is, ami kiküszöböli a névben használható speciális jelekkel való visszaéléseket (ld. SQL injection).
mysql_tquery(connection, query, \"CheckPlayerReg\", \"d\", playerid); //a connection változó értékével megegyezõ idjû kapcsolatra (jelen esetben az 1-esre) küldjük az elõbb formázott query stringet, majd miután végzett a query, az értékét a CheckPlayerReg eljárás elején használhatóvá tesszük, a végén töröljük, azaz, majd ott kérhetünk le sorszám megadása mellett oszlopszámra és oszlopnévre hovatkozva, bizonyos változóba.
//máshol:
forward CheckPlayerReg(playerid);
public CheckPlayerReg(playerid) {
    A query által visszaadott értékeket innentõl...
    new regged = cache_get_field_content_int(0, \"Regged\");
    /*
    Lekérések:
    cache_get_field_content(sorszám (az eredmények közül, 0-tól kezdve), oszlopnév, string(melybe lekérjük))
    cache_get_field_content_int(sorszám (az eredmények közül, 0-tól kezdve), oszlopnév)
    cache_get_field_content_float(u. a. mint az elõzõ, csak floatba kéri le, a visszatérési értékével adja vossza az eredményt...)
    cache_get_row_[int, float](ugyanazokkal a paraméterekkel, mint az elõzõek, stringbe sima cache_get_rowwal kérsz le, az utolsó paramétert intnél és floatnál lehagyod, oszlopnév helyett a -tól indított számát írd. )
    if(regged == 1) //...
    return 1; //idáig használhattad.
}
« Utoljára szerkesztve: 2014. július 23. - 12:15:21 írta KovaNovik »

MySQL adatbázisból lekérdezés. Hogy kell?
« Válasz #4 Dátum: 2014. július 23. - 17:29:02 »
0 Show voters
Köszi! :) Ment volna a +... De még nem tudok adni, mert nem engedi...

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal