mysql_fetch_array

mysql_fetch_array – Zpracovává jeden řádek výsledku příkazu, vráci asociativní pole, číselné pole či oboje.

Syntaxe:

array mysql_fetch_array ( resource result [, int result_type] )

mysql_fetch_array() rozšířená verze funkce mysql_fetch_row(). Kromě ukládání hodnot do poli s číselnou indexaci, funkce vráci hodnoty v poli s indexy podle názvu sloupců.

Jestli několik sloupců v konečném výsledku budou mít stejná jména, pak funkce vráti poslední sloupec. Abyste dostali přístup k prvním, použíjte číselné indexy pole.

Poznámka: mysql_fetch_array() funguje stejně rychle, jako mysql_fetch_row(), ale poskytuje pohodlnější přístup k datům.

Druhý argument result_type je volitelný a je to stálá veličina, která může být buď MYSQL_ASSOC, MYSQL_NUM a nebo MYSQL_BOTH. Výchozí hodnota je MYSQL_BOTH. Použitím MYSQL_BOTH dostanete jak asociativní pole tak i číselné. MYSQL_ASSOC vráti jenom asociativní shody ( stejně jako funkce mysql_fetch_assoc() ) a MYSQL_NUM jen číselné ( stejně jako funkce mysql_fetch_row() )

Poznámka: Dbejte na velká a malá písmena.

Příklad 1. MYSQL_BOTH:

<?php
   //Spojení s databázi
    
mysql_connect("localhost""mysql_user""mysql_password") or
        die(
"Could not connect: " mysql_error());
    
mysql_select_db("db");
        
    
$query mysql_query("SELECT `id`, `name` FROM `table`");

    while (
$row mysql_fetch_array($queryMYSQL_BOTH)) {
        
printf ("id: %s  Jméno: %s"$row[0], $row["name"]);
    }
mysql_free_result($query);
?>

Příklad 2. MYSQL_ASSOC:

<?php
   //Spojení s databázi
    
mysql_connect("localhost""mysql_user""mysql_password") or
        die(
"Could not connect: " mysql_error());
    
mysql_select_db("db");
        
    
$query mysql_query("SELECT `id`, `name` FROM `table`");

    while (
$row mysql_fetch_array($queryMYSQL_ASSOC)) {
        
printf ("id: %s  Jméno: %s"$row["id"], $row["name"]);
    }
mysql_free_result($query);
?>

Příklad 3. MYSQL_NUM:

<?php
   //Spojení s databázi
    
mysql_connect("localhost""mysql_user""mysql_password") or
        die(
"Could not connect: " mysql_error());
    
mysql_select_db("db");
        
    
$query mysql_query("SELECT `id`, `name` FROM `table`");

    while (
$row mysql_fetch_array($queryMYSQL_NUM)) {
        
printf ("id: %s  Jméno: %s"$row[0], $row[1]);                
    }
mysql_free_result($query);
?>

Viz také: