Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como posso usar mysqli_fetch_array() duas vezes?


Você deve sempre separar as manipulações de dados da saída.

Selecione seus dados primeiro:
$db_res = mysqli_query( $db_link, $sql );
$data   = array();
while ($row = mysqli_fetch_assoc($db_res))
{
    $data[] = $row;
}

Note que desde o PHP 5.3 você pode usar fetch_all() em vez do loop explícito:
$db_res = mysqli_query( $db_link, $sql );
$data   = $db_res->fetch_all(MYSQLI_ASSOC);

Em seguida, use-o quantas vezes desejar:
//Top row
foreach ($data as $row)
{
    echo "<td>". $row['Title'] . "</td>";
}

//leftmost column
foreach ($data as $row)
{
    echo "<tr>";
    echo "<td>". $row['Title'] . "</td>";
    .....
    echo "</tr>";
}