Ejemplo de datos:
25 - Blanco
42 - Negro
51 - Sepia
Si, de hecho; estás haciendo la asignación de variables afuera de los ciclos, por eso te da algo así:
<table>
<!-- Aquí asignas id=25 nom=Blanco por ejemplo-->
<tr>
<td>25</td><td>25</td><td>25</td><td>25</td><td>25</td>
</tr>
</table>
1.
Mi pregunta es, quieres que se vayan imprimiendo en columnas de 5 en 5; tu tabla en n*5 (n- no. de renglones)?
2.
Quieres que imprima: id - nombre; tu tabla de n*2 ?
3.
Quieres que imprima todos tus registros en un mismo renglón, porque el ciclo de estos, solo se ejecuta una vez
En todo caso, si no importa el no. de columnas y que esté en el mismo renglón, es más sencillo; la asignación la debes realizar en otro punto.
Código PHP:
<table width="200" border="0">
<tr>
<?php
$cont = 0;
include("connexion.php");
$mostrar= mysql_query("select * from dades order by id asc",$link);
while($row = mysql_fetch_array($mostrar)) {
$id = $row['id'];
$nom = $row['nom'];
echo "<td>".$id."</td>";
}
?>
</tr>
</table>
Lo que arrojaría algo así:
<table>
<tr>
<td>25</td><td>42</td><td>51</td>
</tr>
</table>