Foros del Web » Creando para Internet » HTML »

Recorrer columnas en tabla

Estas en el tema de Recorrer columnas en tabla en el foro de HTML en Foros del Web. Buen día a todos, tengo una gran duda que he tratado de responder y antes de crear un tema en este foro me decidí a ...
  #1 (permalink)  
Antiguo 04/07/2012, 12:24
Avatar de AsderPunk  
Fecha de Ingreso: agosto-2010
Mensajes: 39
Antigüedad: 13 años, 8 meses
Puntos: 3
Pregunta Recorrer columnas en tabla

Buen día a todos, tengo una gran duda que he tratado de responder y antes de crear un tema en este foro me decidí a buscar sin obtener resultados positivos, explico mi problema:

Genero una tabla desde una consulta en MySQL generando un arreglo que es con el que recorro la tabla para ir dejando en cada celda un resultado.

Y hasta aquí todo esta bien, ahora lo que necesito es "quitar" las celdas vacías y recorrerlas hacia arriba, tal vez no me explique bien con palabras pero acá debajo esta una imagen representando lo que necesito:



Muchas gracias y pues si este tema no pertenece aquí, por favor cualquier moderador cámbielo al lugar correcto para obtener las respuestas y ayuda mas óptima.

Se les agradece a todos los del Foro.
Atte: Juan Carmona
  #2 (permalink)  
Antiguo 04/07/2012, 13:49
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: Recorrer columnas en tabla

¿que lenguaje del server usa?: porque lo que hay que hacer es definir los colspan o rowspan necesarios, reportelo para que sea movido al foro en cuestión
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 04/07/2012, 14:06
Avatar de AsderPunk  
Fecha de Ingreso: agosto-2010
Mensajes: 39
Antigüedad: 13 años, 8 meses
Puntos: 3
Respuesta: Recorrer columnas en tabla

Utilizo PHP para generar la tabla, debajo escribo el código:

$arreglo[] --> son los dias de la semana
Código PHP:
<?php
echo '<table id="programacion" width="1300">';
    
//Imprimo los arreglos
    
for($i=0;$i<=41;$i++)
    {
        echo 
"<tr valign='top'>";
        for(
$j=0;$j<=6;$j++)
        {
            
$sql_llenar mysql_query("SELECT * FROM ....");
                
$max mysql_num_rows($sql_llenar);
        if(
$max>0) {
            
$res_llenar mysql_fetch_array($sql_llenar);
                echo 
"<td class='programas'>";
                echo 
"<a href='programacion.php?programa=".$res_llenar['idcontenido']."'>";
                echo 
$arreglo[$i];
                echo 
utf8_encode($res_llenar['nombre_programa'])."<br>".$res_llenar['hora_inicio']." a ".$res_llenar['hora_fin'];
                echo 
"</a>";
                echo 
"</td>";
        }
        else {
                echo 
"<td style='height:1px;'>";
                echo 
"</td>";    
        }
    }
    echo 
"</tr>";
}
echo 
"</table>";
?>
  #4 (permalink)  
Antiguo 05/07/2012, 09:48
Avatar de AsderPunk  
Fecha de Ingreso: agosto-2010
Mensajes: 39
Antigüedad: 13 años, 8 meses
Puntos: 3
Respuesta: Recorrer columnas en tabla

¿No hay nadie que pueda ayudarme?
  #5 (permalink)  
Antiguo 05/07/2012, 15:57
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: Recorrer columnas en tabla

No es sencillo lo que intentás, y desde ya escapa a html ó css, esto es para el foro de php.
Por otra parte los datos que ponés no son muy completos, además tu imagen muestra una fila de encabezados con los dias de la semana y luego aparentemente solo se ven 2 horas, del contenido, nada.
La única idea que se me ocurre es recorres la tabla mysql para cada día de la semana y para los eventos del mismo día que no estén vacíos vas creando una cadena, por ejemplo

Código PHP:
Ver original
  1. $lunes .= "<tr><td>" . $fechainicio . "-" . $fechafin . "</td></tr>";
  2. $martes .= "<tr><td>" . $fechainicio . "-" . $fechafin . "</td></tr>";

una vez que tenés todos y terminaste el bucle, recien ahí imprimís la tabla (tenés la ventaja que ya sabes el número de columnas. Harías esto (lo simplifico)

Código PHP:
Ver original
  1. <tr><th>lunes</th><th>martes</th><th>miercoles</th></tr>
  2. <tr>
  3. <td>
  4. <table>
  5. $lunes
  6. </table>
  7. </td>
  8.  
  9. <td>
  10. <table>
  11. $martes
  12. </table>
  13. </td>
  14.  
  15. <td>
  16. <table>
  17. $miercoles
  18. </table>
  19. </td>
  20. </tr>


Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
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:12.