- Android szakmai topik
- iPhone topik
- Okosóra és okoskiegészítő topik
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- Google Pixel Watch 4 – Hé, Google, mennyi az idő?
- Xiaomi Watch 5 - kínai időszámítás
- Hat év támogatást csomagolt fém házba a OnePlus Nord 4
- 200 MP-es főkamerával és dupla periszkóppal jön az Oppo Find X9 Ultra
- Samsung Galaxy S26 Ultra - fontossági sorrend
- Google Pixel topik
Új hozzászólás Aktív témák
-
cucka
addikt
Itt válaszolok erre, mert tisztán php kérdés, semmi köze a mysql-hez.
A while ciklus akkor áll meg, amikor a feltétele hamis lesz. Ez azt jelenti, hogy a php a feltételt boolean típusra cast-olja és megnézi, hogy egyenlő-e a boolean false értékkel.
Normálisan valahogy így kell megírni egy ilyen ciklust.
$res=mysql_query("select * from tablanev");
while (false !== ($row=mysql_fetch_assoc($res)){
//itt a ciklus magja
}Az történik, hogy (jobbról balra, belülről kifele haladunk):
1. A mysql_fetch_assoc visszatér egy tömbbel vagy boolean false értékkel, amennyiben nincs több sor. Tehát nem ad vissza 1-et meg nullát, hanem mindig a mysql resourse-hoz tartozó következő sort adja vissza asszoc. tömbként. Ha nincs több sor, akkor false-al tér vissza.
2. Az értékadás művelete mindig arra értékelődik ki, ami az értékadás jobb oldalán van, tehát jelen esetben a mysql_fetch_assoc visszatérési értékére.
3. A false !== rész megvizsgálja, hogy a mysql_fetch_assoc boolean false értékkel tér-e vissza. Ezt le lehet spórolni, de célszerű így megszokni. Probléma akkor lehet, ha a mysql_fetch_assoc üres tömbbel tér vissza, ami boolean-ra cast-olva false értéket ad. A mysql_fetch_assoc soha nem fog üres tömbbel visszatérni, de ha mondjuk saját adatbázis kezelő osztályt írsz, akkor előfordulhat.A következő kódod pedig totál rossz:
$result = mysql_fetch_assoc($query) or die ("Para van!")
Itt akkor fog lefutni a die, ha a mysql_fetch_assoc visszatérési értéke == boolean false. (Tehát nincs típusellenőrzés). Gyakorlatilag ha nincs egyetlen sor sem a táblában, akkor lefut a die.
A fenti sor ekvivalens a következővel.
$result=mysql_fetch_assoc($query);
if ($result==false) die("Para van");
Új hozzászólás Aktív témák
- Samsung Galaxy S23 8/128GB Újszerű,Tökéletes Állapotú, Dobozos,Tartozékaival. 1 Év Garanciával!
- Samsung Galaxy S22 8/128GB Újszerű,Kártyafüggetlen,Tartozékaival. 1 Év Garanciával!
- Gigabyte Geforce RTX 3090 Eagle OC
- Budget Gamer - i5 7600 / GTX 1070 8GB / 16GB DDR4 / 512GB SSD
- Eladó Apple Watch SE 2 Rose Gold
- 27% - ÚJ ASUS ROG Strix 27" XG27AQDNG OLED Monitor! 2560x1440 / 360Hz / 0.03ms / G-Sync / FreeSync
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7500F 32/64GB RAM RTX 5060 Ti 8GB GAMER PC termékbeszámítással
- Huawei Watch GT 5 46mm okosóra
- Fujitsu U748 i5-8350 8Gb ram, 256GB SSD win11 számla, garancia
- iPhone 16 Pro Max 156GB Fekete Titán - 27% ÁFA (0397)
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

