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, vagy `FALSE`-sal, ha már nincs több sor.

A mysql_fetch_array() függvény a mysql_fetch_row() függvény kiterjesztett változata. Ráadásul az eredményt nem csak számokkal indexelt tömbbe írja, hanem asszociatív tömbbe is, ahol a mező nevei a kulcsok.

Ha az eredmény több sorá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 az oszlopra. Az alias-olt [ez mi magyarul?] oszlopok tartalmát nem tudod az oszlopok eredeti nevével elérni (pl. itt a 'field' használatával).

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

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

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.

A mysql_fetch_array() függvény elhagyható result_type paramétere a következő lehet: MYSQL_ASSOC, MYSQL_NUM, vagy MYSQL_BOTH. Ez a lehetőség a PHP 3.0.7-es változatában került a nyelvbe. A paraméter alapértelmezett értéke a MYSQL_BOTH.

A MYSQL_BOTH használatával egy olyan tömböt kapsz, amelyben az elemek számmal és karakterlánccal is indexelve vannak. MYSQL_ASSOC értékkel használva csak asszociatív tömböt kapsz (mint a mysql_fetch_assoc() függvénnyel), MYSQL_NUM értékkel meghívva a fügvényt számozott indexű tömböt kapsz (mint a mysql_fetch_row() függvénnyel).

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

Példa 2. mysql_fetch_array() MYSQL_NUM-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_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); ?>`

Lásd még a mysql_fetch_row(), mysql_fetch_assoc(), mysql_data_seek() és mysql_query() függvényeket!

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