Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment puis-je utiliser mysqli_fetch_array() deux fois ?

Vous devez toujours séparer les manipulations de données de la sortie.

Sélectionnez d'abord vos données :

$db_res = mysqli_query( $db_link, $sql );
$data   = array();
while ($row = mysqli_fetch_assoc($db_res))
{
    $data[] = $row;
}

Notez que depuis PHP 5.3 vous pouvez utiliser fetch_all() au lieu de la boucle explicite :

$db_res = mysqli_query( $db_link, $sql );
$data   = $db_res->fetch_all(MYSQLI_ASSOC);

Puis utilisez-le autant de fois que vous le souhaitez :

//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>";
}