Ver Mensaje Individual
  #7 (permalink)  
Antiguo 25/03/2013, 12:38
Avatar de quinqui
quinqui
 
Fecha de Ingreso: agosto-2004
Ubicación: Chile!
Mensajes: 776
Antigüedad: 20 años, 3 meses
Puntos: 56
Respuesta: Tabla con coordenadas PHP.

Holas, andrescev.

Lo que intentas hacer se parece a un horario de clases que tuve que programar en mi trabajo. No sé si te servirá para lo que necesitas, o si es totalmente necesario que lo hagas con los buclés que están compartiendo entre tú y quimfv.

Como lo hice yo, lo del calendario con datos no regulares dentro, fue hacer el calendario con arrays, igual que tú, pero luego el contenido, el recibido por base de datos, lo recibo en un array multidimensional, de modo que cada key del mismo me sirva de coordenada, y así, acceder a la posición exacta en el array, según la posición que me encuentre dentro del ciclo que arma al calendario. Con esto no necesitas recorrer otro array cada vez, sólo acceder directo a la posición: si no existe, imprimes el valor por defecto en la celda.

Algo como esto (ultra simplificado):

Código PHP:
<?php
// columnas:
$dias = array();
$dias["L"] = "LUNES";
// etc...

// filas:
$profesionales = array();
$profesionales[0] = "juanito"// esto lo sacas de bbdd, no?
// etc...

// obteniendo tareas realizadas de profesionales desde bbdd
$tareas = array();
// acá ejecutas la consulta a la bbdd y la guardas en la forma:
while ($fila mysql_fetch_assoc($result))
{
 
$tareas[$fila["id_profesional"]][$fila["dia"]] = $fila["valor"];
}

// y luego, armando y recorriendo el calendario;
?>
<table>
<?php
// aca va el encabezado...
// y aca el contenido:
foreach ($profesionales as $prof)
{
 
?>
  <tr>
   <td><?php print $prof?></td>
 <?php
 
foreach ($dias as $dia)
 {
   
?><td><?php
   
print (isset($tareas[$prof][$dia]) ? $tareas[$prof][$dia]: "N");
   
?><td><?php
 
}
 
?>
 </tr>
 <?php
}
?>
</table>
Saludos!
__________________
pipus.... vieeeeeji plomius!!!
*quinqui site*