Foros del Web » Creando para Internet » HTML »

posicionar <td>

Estas en el tema de posicionar <td> en el foro de HTML en Foros del Web. Hola yo hago una consulta en con el php a mysql...y los resultados los muestro en una tabla..pero quisiera que los resultados que se muestran ...
  #1 (permalink)  
Antiguo 30/08/2011, 10:34
 
Fecha de Ingreso: agosto-2011
Ubicación: Venezuela
Mensajes: 108
Antigüedad: 7 años, 11 meses
Puntos: 5
posicionar <td>

Hola yo hago una consulta en con el php a mysql...y los resultados los muestro en una tabla..pero quisiera que los resultados que se muestran en las tablas no se muestren uno debajo del otro...si no uno al lado del otro...hasta 3 veces y luego alli que si tenga mas <td> debajo....como lo hago gracias...osea q tengo q poner en el css? gracias
  #2 (permalink)  
Antiguo 30/08/2011, 12:31
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 12 años
Puntos: 1567
Respuesta: posicionar <td>

Tenes que generar nuevas filas, <tr>, cada tres registros que obtengas de la base de datos, con un simple contador puesto en el bucle es sencillo, es decir que la solución pasa por php y no por css ó html.
Mové el tema al foro correspondiente.

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #3 (permalink)  
Antiguo 30/08/2011, 13:10
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 11 años, 1 mes
Puntos: 1011
Respuesta: posicionar <td>

aquí te dejo dos maneras de hacerlo
Cita:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; http-equiv="Content-Type" charset=utf-8"/>
<title></title>
</head>
<body>
<?php
$total_registros_encontrados = 52;

for ($j = 0 ; $j < $total_registros_encontrados; $j+=5) {
$temp .= " " .$j;
}

$arreglo = explode(" ", trim($temp));
$arr = Array();
for ($x = 0; $x< sizeof($arreglo); $x++) {
$arr[$x] = $arreglo[$x];
}
?>

<table border="1">
<tr>

<?php
for ($i = 1; $i <= $total_registros_encontrados; $i++) {
echo "<td>" .$i. "</td>";

// ==== Se puede hacer de
// -------- Esta manera
if ($i % 5 == 0) {
echo "</tr><tr>";
}
// ------
// ------ O de esta otra
//$cad = "\$valores=\$i == " .implode(" || \$i == ", $arr).";";
//eval($cad);
//if ($valores) {
//echo "</tr><tr>";
//}
// ---------
// ==============
}
?>
</tr>
</table>
</body>
</html>
  #4 (permalink)  
Antiguo 30/08/2011, 19:10
 
Fecha de Ingreso: agosto-2011
Ubicación: Venezuela
Mensajes: 108
Antigüedad: 7 años, 11 meses
Puntos: 5
Respuesta: posicionar <td>

Hola ya me los muestra unos al lado del otro...pero no me los muestra cada 3 osea necesito que cada 3 registro baje y se pongan los otros 3 registros abajo...como se hace?
  #5 (permalink)  
Antiguo 30/08/2011, 19:21
 
Fecha de Ingreso: agosto-2011
Ubicación: Venezuela
Mensajes: 108
Antigüedad: 7 años, 11 meses
Puntos: 5
Respuesta: posicionar <td>

ya me lo muestra uno al lado del otro...pero ahora me muestra muchos resultados...iguales
  #6 (permalink)  
Antiguo 30/08/2011, 21:23
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 12 años
Puntos: 1567
Respuesta: posicionar <td>

Podés usar esto


Código PHP:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head>
  5. <title>titulo</title>
  6. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  7. <style type="text/css">
  8. table td {
  9. border: solid 1px #000;
  10. border-spacing: 2px;
  11. }
  12. table tr td.sinborde {
  13. border: none;
  14. border-spacing: 0px;
  15. }
  16. </style>
  17. </head>
  18. <body>
  19. <?php
  20. $sqlhostname = "localhost";
  21. $login = "xxx";
  22. $password = "@xxx";
  23. $base = "xxxx";
  24.  
  25. $db_connect = mysql_connect($sqlhostname,$login,$password);
  26. $base_selection = mysql_select_db($base,$db_connect);
  27.  
  28. $query = "SELECT fecha FROM msm";
  29. $req = mysql_query($query);
  30.  
  31. if (!$req)
  32. { echo "<B>Error ".mysql_errno()." :</B> ".mysql_error()."";
  33. exit; }
  34. $res = mysql_num_rows($req);
  35.  
  36. if ($res == 0){
  37. echo "<center><b>sin resultados</b></center>";
  38. }else{
  39. $celdasporfila = 5;
  40. $resto = $res%$celdasporfila;
  41. echo "<table>\n<tr>\n";
  42. $x = 1;
  43. while($fila = mysql_fetch_array($req)){
  44. $fecha = $fila['fecha'];
  45.                       echo "<td>$fecha</td>\n";
  46.                       if($x == $celdasporfila){
  47.                       echo "</tr>\n<tr>";
  48.                       $x = 0;
  49.                       }                    
  50. $x++;
  51.     }
  52. }
  53.  if($resto != 0){
  54. echo "</tr>";
  55. }else{
  56. echo "\n<td class='sinborde' colspan='$celdasporfila'><!-- sin contenido --></td></tr>\n";
  57. }
  58. echo "</table>";
  59. ?>
  60. </body>
  61. </html>

Lo unico que tenes que indicar es el valor de la variable
$celdasporfila, en el caso de que el numero de celdas por fila respecto del numero de registros sea un cociente exacto, se te genera una fila adicional sin datos, que como se observa , se la puede formatear con css para quitarle el borde.
se puede elaborar un poco más. pero asi te genera un xhtml válido

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #7 (permalink)  
Antiguo 30/08/2011, 21:37
 
Fecha de Ingreso: agosto-2011
Ubicación: Venezuela
Mensajes: 108
Antigüedad: 7 años, 11 meses
Puntos: 5
Respuesta: posicionar <td>

ya lo acomode fue un error mio...disculpen de verdad....y muchas gracias por la gran ayuda :D que tengan una buena semana :D
  #8 (permalink)  
Antiguo 31/08/2011, 05:38
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 11 años, 1 mes
Puntos: 1011
Respuesta: posicionar <td>

como no has explicado, sólo decir que se trataba de cambiar el 5 por el número que se quiera
  #9 (permalink)  
Antiguo 31/08/2011, 08:19
 
Fecha de Ingreso: agosto-2011
Ubicación: Venezuela
Mensajes: 108
Antigüedad: 7 años, 11 meses
Puntos: 5
Respuesta: posicionar <td>

jajajaja no..pense q era eso pero no era....era que habia posicionado mal un ciclo en mi codigo ...jaja disculpa :D y gracias

Etiquetas: css, php, tabla
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 02:42.