PHP kézikönyv
Előző |  | Következő

# mysql_fetch_array

(PHP 3, PHP 4, PHP 5)

mysql_fetch_array -- Kérés egy sorát adja vissza (tetszőleges) tömb formájában

## Leírás

array mysql_fetch_array ( resource result [, int result_type] )

Az eredmény következő sorával tér vissza tömb formájában.

## 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.

result_type

  A visszaadott tömb típusa. Az allábbi konstansok értékét veheti fel: `MYSQL_ASSOC`, `MYSQL_NUM`, az alapértelmezett értéke pedig `MYSQL_BOTH`.

## Visszatérési értékek

Egy tömböt ad vissza, amely a következő sornak felel meg, ha pedig nincs több sor, akkor `FALSE`-ot. A visszaadott tömb típusa a result_type paraméter értékétől függ. Ha az alapértelmezett `MYSQL_BOTH`-ot használod, akkor egy olyan tömböt kapsz, amelynek asszociatív és szám indexe is van. `MYSQL_ASSOC`-ot használva csak asszociatív indexet kapsz (ahogyan mysql_fetch_assoc() adná vissza), ha pedig `MYSQL_NUM`-ot adsz meg, akkor csak számokkal lesz indexelve a tömb (mint mysql_fetch_row() használata esetén).

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 ilyenkor is, akkor számmal indexeld a tömböt, vagy az SQL parancsban kérj aliast (álnevet) az oszlopra. Az álnévvel hivatkozott oszlopok tartalmát nem tudod az oszlopok eredeti nevével elérni.

## Példák

Példa 1. Kérés két azonos nevű mezővel

    SELECT tabla1.mezo AS ize tabla2.mezo AS bigyo FROM tabla1, tabla2

Példa 2. mysql_fetch_array() `MYSQL_NUM`-mal

`<?php mysql_connect("localhost", "mysql_felhasznalo", "mysql_jelszo") or die("Kapcsolódás sikertelen: " . mysql_error()); mysql_select_db("adatbazis"); $eredmeny = mysql_query("SELECT azon, nev FROM tabla"); while ($sor = mysql_fetch_array($eredmeny, MYSQL_NUM)) { printf("Azonosító: %s Név: %s", $sor[0], $sor[1]); } mysql_free_result($eredmeny); ?>`

Példa 3. mysql_fetch_array() `MYSQL_ASSOC`-al

`<?php mysql_connect("localhost", "mysql_felhasznalo", "mysql_jelszo") or die("Kapcsolódás sikertelen: " . mysql_error()); mysql_select_db("adatbazis"); $eredmeny = mysql_query("SELECT azon, nev FROM tabla"); while ($sor = mysql_fetch_array($eredmeny, MYSQL_ASSOC)) { printf("Azonosító: %s Név: %s", $sor["azon"], $sor["nev"]); } mysql_free_result($eredmeny); ?>`

Példa 4. mysql_fetch_array() `MYSQL_BOTH`-al

`<?php mysql_connect("localhost", "mysql_felhasznalo", "mysql_jelszo") or die("Kapcsolódás sikertelen: " . mysql_error()); mysql_select_db("adatbazis"); $eredmeny = mysql_query("SELECT azon, nev FROM tabla"); while ($sor = mysql_fetch_array($eredmeny, MYSQL_BOTH)) { printf("Azonosító: %s Név: %s", $sor[0], $sor["nev"]); } mysql_free_result($eredmeny); ?>`

## Megjegyzések

> Hatékonyság: Jó tudni, hogy a mysql_fetch_array() függvény használata nem jelentősen lassabb a mysql_fetch_row() használatánál, de a kapott eredmény feldolgozása jóval kényelmesebb.

> Megjegyzés: Az ezen függvény által visszaadott mezőnevek kis-nagybetű helyesek.

> Megjegyzés: A tárgyalt függvény a NULL értékű adatbázis mezőket ap PHP `NULL` értékével tölti fel.

## Lásd még

mysql_fetch_row()
mysql_fetch_assoc()
mysql_data_seek()
mysql_query()

Előző | Tartalom | Következő
mysql_escape_string | Fel | mysql_fetch_assoc