Foros del Web » Programando para Internet » PHP »

Cronograma

Estas en el tema de Cronograma en el foro de PHP en Foros del Web. Buenas a Todos: Necesito hacer una página que muestre lo siguiente: Una tabla cadriculada + - así: Reservas del mes tal año tal: dias semanas ...
  #1 (permalink)  
Antiguo 12/10/2010, 09:40
Usuario no validado
 
Fecha de Ingreso: abril-2010
Ubicación: La habana
Mensajes: 229
Antigüedad: 14 años, 7 meses
Puntos: 4
Pregunta Cronograma

Buenas a Todos:
Necesito hacer una página que muestre lo siguiente:

Una tabla cadriculada + - así:

Reservas del mes tal año tal:
dias semanas D L M M J V S D L M M J V S D L M
dia 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Evento reservado por: sesaltados
Fulano resaltados
Ciclano resaltados
Mengano


O sea, donde dice realtados es que se marque de algún color los días ocupados porque fueron reservados por los encargados del evento.

Por ahora no me interesa nada con permisios de usuario.

Solo necesito conformás una base de datos la cual al ser llenada con determinada información entonces me muestre en la web la tabla de arriba pero para dos meses.

Si alguien conoce de algún ejemplo que haya para descargar que se paresca a esto¿?

Lo otro es que me puedan dar almenos una idea de como uedo implementar esto.

Salu2 a To2
  #2 (permalink)  
Antiguo 12/10/2010, 10:22
Usuario no validado
 
Fecha de Ingreso: abril-2010
Ubicación: La habana
Mensajes: 229
Antigüedad: 14 años, 7 meses
Puntos: 4
Respuesta: Cronograma

Busqué y creo que este calandario que yo había modificado (lo descargué de www.lawebdelprogramador.com) un poco para mostrar efemérides, me puede servir, aquí les va el calendario, quizás a alguien le sea útil.

Código PHP:
<link rel="stylesheet" type="text/css" href='css/calendariojuank.css'>
<?php

  $fecha 
date("d m Y D"); // obtener la fecha actual del sistema
  
$dia $fecha[0].$fecha[1]; // obtener el dia actual
  
$nMes $fecha[3].$fecha[4]; // obtener el mes actual
  
$nomdia $fecha[11].$fecha[12].$fecha[13]; // obtener el nombre dia actual
  
$anyo $fecha[6].$fecha[7].$fecha[8].$fecha[9];
  if(
$nomdia=="Sun"$pos=1// calcular la posicion en dia de la semana
  
else if($nomdia=="Mon"$pos=2;
  else if(
$nomdia=="Tue"$pos=3;
  else if(
$nomdia=="Wed"$pos=4;
  else if(
$nomdia=="Thu"$pos=5;
  else if(
$nomdia=="Fri"$pos=6;
  else if(
$nomdia=="Sat"$pos=7;
  if(
$nMes==1$nomMes="Enero";
  else if(
$nMes==2$nomMes="Febrero";
  else if(
$nMes==3$nomMes="Marzo";
  else if(
$nMes==4$nomMes="Abril";
  else if(
$nMes==5$nomMes="Mayo";
  else if(
$nMes==6$nomMes="Junio";
  else if(
$nMes==7$nomMes="Julio";
  else if(
$nMes==8$nomMes="Agosto";
  else if(
$nMes==9$nomMes="Septiembre";
  else if(
$nMes==10$nomMes="Octubre";
  else if(
$nMes==11$nomMes="Noviembre";
  else if(
$nMes==12$nomMes="Diciembre";
  echo 
"<div id=\"mes\"><p><span id=\"nombremes\">".$nomMes."</span><span id=\"year\">";
  echo 
$anyo."</span></p>";
  echo 
"\n<table><tr id=\"dias\"><td>Dom</td><td>Lun</td><td>Mat</td><td>Mie</td>";
  echo 
"<td>Jue</td><td>Vie</td><td>Sab</td></tr>";
  
// calcular dia de la semana del dia 1 del mes actual
  
$diaSem $dia;
  do{ 
$diaSem -= 7; }while($diaSem>7);
  if(
$diaSem<=0$diaSem+=7;
  
$pos $pos-$diaSem+1;
  if(
$pos<=0$pos 7-($pos*-1);
  
// imprimir todos los dias del mes
  
echo "\n<tr>";
  for(
$dd=1;$dd<$pos;$dd++) echo "<td class=\"vacio\"></td>";
  for(
$dd=1;$dd<=cal_days_in_month(CAL_GREGORIAN,$nMes,$anyo);$dd++){
    echo 
"<td".($dia==$dd?" id=\"diaactual\"":"")."><a href=\"prueba.php?num=$dd&mes=$nomMes\">$dd</a></td>";
    if(++
$pos>7){
      echo
"</tr>\n";
      
$pos=1;
    }
  }
  echo 
"</tr></table>";
?>
Ahora lo que no sé es cómo organizar una base de datos para que se me coloreen los días que estén reservados, me explico, me interesa (ya que la primera tabla es mucho pedir por lo menos para mi en este momento) que este almanaquito, consulte una bese de datos (no sé cómo estructurarla para este fin) y al ver los días ocupados estos campos en el almanaque se coloreen. Cómo lo logro¿?

Salu2 y perdonen las molestias¿?
  #3 (permalink)  
Antiguo 12/10/2010, 12:26
Usuario no validado
 
Fecha de Ingreso: abril-2010
Ubicación: La habana
Mensajes: 229
Antigüedad: 14 años, 7 meses
Puntos: 4
Respuesta: Cronograma

Este vínculo ilustra muy bien lo que quiero:
http://www.easyphpcalendar.com/demo.php
Básicamente deseo algo que haga + - eso, ese me sirve pero no sé donde descargar algo paracido que sea totalmente gratis.

Salu2
  #4 (permalink)  
Antiguo 12/10/2010, 12:42
 
Fecha de Ingreso: marzo-2010
Ubicación: Cali
Mensajes: 203
Antigüedad: 14 años, 8 meses
Puntos: 5
Respuesta: Cronograma

mira esto de pronto te puede servir
http://www.dynarch.com/projects/calendar/download/1.8/

y este

http://jqueryui.com/demos/datepicker/#default

en la opcion de la derecha display inline
  #5 (permalink)  
Antiguo 12/10/2010, 13:45
Usuario no validado
 
Fecha de Ingreso: abril-2010
Ubicación: La habana
Mensajes: 229
Antigüedad: 14 años, 7 meses
Puntos: 4
Respuesta: Cronograma

Cita:
Iniciado por andruxand Ver Mensaje
mira esto de pronto te puede servir
http://www.dynarch.com/projects/calendar/download/1.8/

y este

http://jqueryui.com/demos/datepicker/#default

en la opcion de la derecha display inline
Muy retocados y buenos pero no me sirven para lo que quiero ya que básicamete son simplemente como el código del calendario que postié.

Ese calendario que postié me da el mes actual con el dia actual resatado y eso, ahora yo quiero modificarlo para que él sea capás de ver si tengo determinados días ocupados en una bese de datos y entonces me los marque en un determinado color; es una pena que no pueda yo adjuntar archivos aquí.

Básicamente para ir haciendo pruebas cree una tabla con los campos ¨dia, mes, y Ano¨ entre otros campos pero quiero que este almanaque sea capás de detectar los valores de dichos campos y entonces marcar esos numeros en el calendario.
Cómo lo hago¿?



El que tenga alguna duda esífica para poderme ayudar me la comenta y explico el detalle que quiera.

Etiquetas: Ninguno
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 21:14.