Ver Mensaje Individual
  #4 (permalink)  
Antiguo 12/07/2009, 01:14
manumax
 
Fecha de Ingreso: julio-2009
Ubicación: Paraguay
Mensajes: 36
Antigüedad: 14 años, 9 meses
Puntos: 0
Exclamación Respuesta: alinear en columna los resultados de una consulta!

pude solucionarlo, gracias.. pero el script tiene un error.. en lugar de mostrarme todos los usuarios de la base de datos.. me muestra solo el total menos uno.. una prueba, registre tres usuarios: mario,mariam y ana... y al usar el script que es este


<?

echo '<br><br><b><big><big>Amigos</b><br><br>';
$conexion = mysql_connect('localhost', 'root', ''); // se conecta con el servidor

mysql_select_db('user', $conexion); // selecciona la base de datos

$tabla = mysql_query("SELECT id, nick, rutaimg FROM usuarios ORDER BY nombre ASC"); //

while ($row = mysql_fetch_array($tabla)) { // comienza un bucle que leera todos los registros y ejecutara las ordenes que

siguen




echo "<table align=center>";

$columnes = 4; # Número de columnas (variable)

if (($rows=mysql_num_rows($tabla))==0) {
echo "<tr><td colspan=$columnes>No hay resultados en la BD.</td></tr> ";
} else {
echo "<tr><td colspan=$columnes>$rows Resultados </td></tr>";
}

for ($i=1; $row = mysql_fetch_row ($tabla); $i++) {
$resto = ($i % $columnes); # Número de celda del <tr> en que nos encontramos
if ($resto == 1) {echo "<tr>";} # Si es la primera celda, abrimos <tr>
echo "<td>$row[1]</td>";
if ($resto == 0) {echo "</tr>";} # Si es la última celda, cerramos </tr>
}
if ($resto <> 0) { # Si el resultado no es múltiple de $columnes acabamos de rellenar los huecos
$ajust = $columnes - $resto; # Número de huecos necesarios
for ($j = 0; $j < $ajust; $j++) {echo "<td>&nbsp;</td>";}
echo "</tr>"; # Cerramos la última línea </tr>
}

echo "</table>";









} // fin del bucle de ordenes

mysql_free_result($tabla); // libera los registros de la tabla

mysql_close($conexion); // cierra la conexion con la base de datos


?>


me sale asi:

3 resultados
mario,mariam

entienden? solo me muestra dos de ellos pero en la cuenta me dice lo correcto que hay tres.. alguna idea de porque?