miércoles, 2 de mayo de 2012

fetch_assoc en PHP


Retorna una matriz de strings asociativa que representa a la fila obtenida del resultset, donde cada llave de la matriz corresponde al nombre de una de las columnas de éste; o NULL si es que no le quedan filas.
Si dos o más columnas del resultado tienen el mismo nombre de campo, la última columna tomará precedencia. Para acceder a la(s) otra(s) columna(s) con el mismo nombre, se necesita ya sea acceder al resultado usando los índices numéricos gracias a mysqli_fetch_row(), ya sea añadirle alias a los campos.
Estilo por procedimientos


Estilo orientado a objetos
mysqli_result::fetch_assoc ( void )


Estilo por procedimientos
mysqli_fetch_assoc ( mysqli_result $result )

EJEMPLO 1


<?php
$mysqli = new mysqli("localhost", "root", "admin", "demo");

/* verificar la conexión */
if (mysqli_connect_errno()) {
    printf("Conexión fallida: %s\n", mysqli_connect_error());
    exit();
}

$consulta = "SELECT nombre, apellido FROM usuarios";

if ($result = $mysqli->query($consulta)) {

    /* obtener array asociativo */
    while ($row = $result->fetch_assoc()) {
        printf ("%s (%s)\n", $row["nombre"], $row["apellido"]);
    }

    /* liberar el resultset */
    $result->free();
}

/* cerrar la conexión */
$mysqli->close();
?>

EJEMPLO 2

<?php
$mysqli = new mysqli("localhost""root""admin""demo");

/* verificar la conexión */
if (mysqli_connect_errno()) {
    printf("Conexión fallida: %s\n"mysqli_connect_error());
    exit();
}

$consulta "SELECT nombre, apellido FROM usuarios";

if ($result = mysqli_query($link, $query)) {

    /* obtener array asociativo */
    while ($row = mysqli_fetch_assoc($result)) {
        printf ("%s (%s)\n", $row["nombre"], $row["apellido"]);
    }

    /* liberar el conjunto de resultados */
    mysqli_free_result($result);
}

/* cerrar la conexión */
mysqli_close($link);
?>




4 comentarios:

Ibañez dijo...

maestro y como seria como el clasico mysql_fetch_array se puede usar esta función en vez de fetch_assoc

Juan dijo...

mysql_fetch_array está obsoleta a partir de PHP 5.5.0, y será eliminada en el futuro. te recomiendo usar el fetch_assoc.

http://php.net/manual/es/function.mysql-fetch-array.php

Unknown dijo...

?php while($row=$resultado->fetch_assoc()){ ?>

tengo erroe en esto profe

gggames dijo...

Es pura mierda

Publicar un comentario