Foros del Web » Programando para Internet » PHP »

acomodo resultados

Estas en el tema de acomodo resultados en el foro de PHP en Foros del Web. hola tengo un codigo que hace una consulta en una base de datos, pero cada resultado me lo acomoda uno arriba del otro, lo que ...
  #1 (permalink)  
Antiguo 25/02/2011, 23:53
 
Fecha de Ingreso: octubre-2010
Mensajes: 13
Antigüedad: 14 años, 1 mes
Puntos: 0
acomodo resultados

hola tengo un codigo que hace una consulta en una base de datos, pero cada resultado me lo acomoda uno arriba del otro, lo que quiero es que en vez de que aparesca abajo aparesca a un lado y cuando se acompleten 4 resultados sigan aparsiendo abajo de los anteriores gracias
  #2 (permalink)  
Antiguo 26/02/2011, 00:25
 
Fecha de Ingreso: noviembre-2009
Mensajes: 535
Antigüedad: 15 años
Puntos: 25
Respuesta: acomodo resultados

muestra el codigo
  #3 (permalink)  
Antiguo 26/02/2011, 00:45
 
Fecha de Ingreso: octubre-2010
Mensajes: 13
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: acomodo resultados

aqui esta mi codigo
Código PHP:
<?php
echo '<table align="center">';
$buscar="";

$conexion mysql_connect("xxx""xx","xxx");
mysql_select_db("xxxx"$conexion);
$consulta "SELECT * FROM calcas WHERE nombre LIKE '%$buscar%' ";
$resultado mysql_query($consulta);
while (
$row mysql_fetch_array($resultado))
{
echo 
'<tr><td>'.$row['nombre'].'</td><td>'.$row['nombre'].'</td><td>'.$row['nombre'].'</td></tr>'; ;
}
mysql_free_result($resultado);
mysql_close($conexion);

echo 
'</table>';
?>
  #4 (permalink)  
Antiguo 26/02/2011, 00:50
 
Fecha de Ingreso: noviembre-2009
Mensajes: 535
Antigüedad: 15 años
Puntos: 25
Respuesta: acomodo resultados

tendras que poner el tag <tr> fuera del while de esta forma:
Código PHP:
Ver original
  1. <?php
  2. echo '<table align="center">';
  3. $buscar="";
  4.  
  5. $conexion = mysql_connect("xxx", "xx","xxx");
  6. mysql_select_db("xxxx", $conexion);
  7. $consulta = "SELECT * FROM calcas WHERE nombre LIKE '%$buscar%' ";
  8. $resultado = mysql_query($consulta);
  9. echo '<tr>';
  10. while ($row = mysql_fetch_array($resultado))
  11. {
  12. echo '<td>'.$row['nombre'].'</td><td>'.$row['nombre'].'</td><td>'.$row['nombre'].'</td>'; ;
  13. }
  14. echo '</tr>';
  15. mysql_free_result($resultado);
  16. mysql_close($conexion);
  17.  
  18. echo '</table>';
  19. ?>
y tanmbien se quieres extraer el $row['nombre']; no hace falta doplicarlo el while lo extrae a todos basta con

Código PHP:
Ver original
  1. <?php
  2. echo '<table align="center">';
  3. $buscar="";
  4.  
  5. $conexion = mysql_connect("xxx", "xx","xxx");
  6. mysql_select_db("xxxx", $conexion);
  7. $consulta = "SELECT * FROM calcas WHERE nombre LIKE '%$buscar%' ";
  8. $resultado = mysql_query($consulta);
  9. echo '<tr>';
  10. while ($row = mysql_fetch_array($resultado))
  11. {
  12. echo '<td>'.$row['nombre'].'</td>'; ;
  13. }
  14. echo '</tr>';
  15. mysql_free_result($resultado);
  16. mysql_close($conexion);
  17.  
  18. echo '</table>';
  19. ?>
suerte
  #5 (permalink)  
Antiguo 26/02/2011, 01:16
 
Fecha de Ingreso: octubre-2010
Mensajes: 13
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: acomodo resultados

GRACIAS PERO AHORA QUIERO QUE SE MUESTREN 4 RESULTADOS Y LUEGO OTROS 4 ABAJO DE ESOS si no es mucha molestia :)
  #6 (permalink)  
Antiguo 26/02/2011, 01:34
 
Fecha de Ingreso: noviembre-2009
Mensajes: 535
Antigüedad: 15 años
Puntos: 25
Respuesta: acomodo resultados

en este caso prueba algo asi
Código PHP:
Ver original
  1. <?php
  2. echo '<table align="center">';
  3. $buscar="";
  4.  
  5. $conexion = mysql_connect("xxx", "xx","xxx");
  6. mysql_select_db("xxxx", $conexion);
  7. $consulta = "SELECT * FROM calcas WHERE nombre LIKE '%$buscar%' ";
  8. $resultado = mysql_query($consulta);
  9. for($i = 0; $i< 4; $i++){
  10. echo '<tr>';
  11. while ($row = mysql_fetch_array($resultado))
  12. {
  13. echo '<td>'.$row['nombre'].'</td>'; ;
  14. }
  15. echo '</tr>';
  16. }
  17. mysql_free_result($resultado);
  18. mysql_close($conexion);
  19.  
  20. echo '</table>';
  21. ?>
  #7 (permalink)  
Antiguo 26/02/2011, 03:15
Avatar de s00rk  
Fecha de Ingreso: octubre-2010
Ubicación: Mexico
Mensajes: 238
Antigüedad: 14 años
Puntos: 48
Respuesta: acomodo resultados

Cita:
Iniciado por arros Ver Mensaje
en este caso prueba algo asi
Código PHP:
Ver original
  1. <?php
  2. echo '<table align="center">';
  3. $buscar="";
  4.  
  5. $conexion = mysql_connect("xxx", "xx","xxx");
  6. mysql_select_db("xxxx", $conexion);
  7. $consulta = "SELECT * FROM calcas WHERE nombre LIKE '%$buscar%' ";
  8. $resultado = mysql_query($consulta);
  9. for($i = 0; $i< 4; $i++){
  10. echo '<tr>';
  11. while ($row = mysql_fetch_array($resultado))
  12. {
  13. echo '<td>'.$row['nombre'].'</td>'; ;
  14. }
  15. echo '</tr>';
  16. }
  17. mysql_free_result($resultado);
  18. mysql_close($conexion);
  19.  
  20. echo '</table>';
  21. ?>
Eso estaria mal porque haria exactamente lo mismo,
Ejemplo tenemos 9 valores a,b,c,d,e,f,g,h,i en el array lo que hara tu codigo es mostrar algo como esto
Código:
a b c d e f g h i
a b c d e f g h i
a b c d e f g h i
a b c d e f g h i
La forma mas sencilla para mi al hacer esto seria de la siguiente manera:

Código PHP:
Ver original
  1. <?php
  2. echo '<table align="center">';
  3. $buscar="";
  4.  
  5. $conexion = mysql_connect("xxx", "xx","xxx");
  6. mysql_select_db("xxxx", $conexion);
  7. $consulta = "SELECT * FROM calcas WHERE nombre LIKE '%$buscar%' ";
  8. $resultado = mysql_query($consulta);
  9. $n = 1;
  10. $nn = 1;
  11. while ($row = mysql_fetch_array($resultado))
  12. {
  13. // Comprovamos que no sean 4 o si es la primera vez, si es asi agregamos <tr>
  14.     if($n == 4 || $nn == 1)
  15.     {
  16.         echo '<tr>';
  17.     }
  18.     echo '<td>'.$row['nombre'].'</td>';
  19. // Comprovamos que no sean 4 o si es la primera vez, si es asi agregamos </tr>
  20.     if($n == 4 || $nn == 1)
  21.     {
  22.         echo '</tr>';
  23.     }
  24.  
  25.     $n++;
  26.     $nn++;
  27.  
  28. // Comprovamos si la variable n es mayor a 4 si es asi la reiniciamos a 1 (Esto porque anteriormente lo aumentamos
  29. // Y si esto lo hacemos antes del incremento seria erroneo luego porque ya no andaria aunq bueno tambien podriamos colocarlo
  30. // Al principio del while, pero por comodidad aqui esta mejor para mi ademas de ser mas entendible
  31.     if($n > 4)
  32.     {
  33.         $n = 1;
  34.     }
  35. }
  36.  
  37.  
  38. mysql_free_result($resultado);
  39. mysql_close($conexion);
  40.  
  41. echo '</table>';
  42. ?>

Cualquier duda me dices, aunque no prove el codigo pero asi en pura logica viendolo pienso que deveria funcionar.

Última edición por s00rk; 26/02/2011 a las 03:20

Etiquetas: acomodo, consultas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:16.