mysql_fetch_assoc
(PHP 4 >= 4.0.3, PHP 5, PECL mysql:1.0)
mysql_fetch_assoc — Az eredmény egy sorát asszociatÃv tömbként adja vissza.
LeÃrás
Az eredmény következÅ‘ sorával, mint asszociatÃv tömbbel tér vissza, és a belsÅ‘ adatpointert a sor elejére állÃtja.
A mysql_fetch_assoc() függvény hÃvásával ugyanazt érjük el, mintha a mysql_fetch_array() függvényt hÃvtuk volna meg MYSQL_ASSOC második paraméterrel. Ez a függvény egy tisztán asszociatÃv tömböt ad vissza.
Paraméterek
- result
-
A feldolgozandó eredményhalmaz erÅ‘forrás. Ez az eredményhalmaz egy mysql_query() hÃvás eredményeként kellett létrejöjjön.
Visszatérési értékek
Visszaad egy asszociatÃv tömböt amely megfelel a következÅ‘ sornak, ha viszont nincs több sor, akkor FALSE-ot ad vissza.
Ha az eredmény több oszlopának ugyanaz a neve, akkor a késÅ‘bb szereplÅ‘ oszlop marad meg. Ha szeretnéd az összes mezÅ‘t elérni, akkor vagy számokkal indexszel érd el az eredményt a mysql_fetch_array() függvény használatával, vagy az SQL parancsban kérj aliast az oszlopra. Lásd még a mysql_fetch_array() függvénynél szereplÅ‘ példát az aliasok leÃrásáért.
Példák
Example#1 Egy terjedelmesebb mysql_fetch_assoc() példa
<?php
$kapcsolat = mysql_connect("localhost", "mysql_felhasznalo", "mysql_jelszo");
if (!$kapcsolat) {
echo "Nem tudok csatlakozni: " . mysql_error();
exit;
}
if (!mysql_select_db("adatbazis")) {
echo "Nem tudok belépni az adatbázisba: " . mysql_error();
exit;
}
$sql = "SELECT azon AS felhasznalo_azon, nev, allapot
FROM felhasznalok
WHERE allapot = 1";
$eredmeny = mysql_query($sql);
if (!$eredmeny) {
echo "A kérés futtatása sikertelen volt: " . mysql_error();
exit;
}
if (mysql_num_rows($eredmeny) == 0) {
echo "Nincs egy sor sem, nincs mit kiÃrjak, ezért most kilépek";
exit;
}
// AmÃg létezik adatsor, tedd bele azt a $sor változóba, mint asszociatÃv tömböt.
// Megjegyzés: Ha csak egyetlen sort vársz, semmi szükség a ciklusra
// Megjegyzés: Ha beÃrsz egy extract($sor);-t a ciklus magjába,
// létre lesznek hozva a $felhasznalo_azon, $nev, $allapot változók
while ($sor = mysql_fetch_assoc($eredmeny)) {
echo $sor["felhasznalo_azon"];
echo $sor["nev"];
echo $sor["allapot"];
}
mysql_free_result($eredmeny);
?>
Megjegyzések
Note: Hatékonyság Jó tudni, hogy a mysql_fetch_assoc() függvény nem jelentősen lassabb a mysql_fetch_row() függvénynél, de a kapott eredmény feldolgozása jóval kényelmesebb.
Note: Az ezen függvény által visszaadott mezőnevek kis-nagybetű helyesek.
Note: A tárgyalt függvény a NULL értékű adatbázis mezőket ap PHP NULL értékével tölti fel.