Javascript, mi lehet a probléma?
Mindig ezt a hibaüzenetet kapom:
TypeError: Cannot read property 'id' of undefined
Hogy olvashatóbb legyen, jsfiddle-ra feltöltöttem a kódot:
Köszi előre is!
Van egy készülő teszt weboldalam, ami igazából egy szerencsejáték féle oldal, amelyen lényegében botok vannak, akik fogadnak véletlenszerű itemekkel és te is beszállhatsz fogadni.
Van egy adatbázis. Két adattábla létezik benne:
-people
-items
A people adattábla a botok adatait tárolja:
-bot ID-jét (personid)
-bot nevét (name)
-bot képét (avatar)
Az items adattábla a következőket tárolja:
-az item nevét (itemname)
-az itemről egy képet (image)
Azt szeretném elérni, hogy 90 másodpercenként induljon egy játék kör (ezt már megcsináltam setInterval függvénnyel). A játék kör így néz ki: -véletlenszerűen kiválaszt 5 botot, és mindegyik bot kap véletlenszerű dolgokat véletlenszerű mennyiségben. Na ezt próbáltam reprezentálni ebben a gányában.
Nem mindegy hogy id vagy ID azaaz kis és nagybetű érzékeny.
Ha pl. adatbázisban ID néven van, akkor script nyelven id nem lesz definiálva.
Az items táblára küldött query nem ad vissza semmit, ezért jön a hibaüzenet.
És azért nem ad vissza semmit, mert az feltétel hibás. Szöveg értéket idézőjelbe (') kell tenni. Szerintem így kellene:
... mysqlConnection.query("SELECT * FROM `items` WHERE `type` = '" + random_item + "' ORDER BY RAND() ", ...
Tipp: a query szöveget tedd nyugodtan dupla idézőjelek közé, az értékeket pedig simákba.
Tipp2: mindig validáld, hogy mit ad vissza egy query!
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!