Volver al índiceProyectos - Weblog

El objetivo de este proyecto es crear un weblog para un único usuario


Weblog 1 - Inicio

La página inicial del weblog muestra las opciones disponibles: Editar, Leer y Borrar todo

Bienvenido al weblog de Fulanito.


Weblog 2 - Modo de edición

Al hacer clic en Editar desde la página de inicio, aparece la fecha del día, un área de texto y un calendario en el que se puede hacer clic en todos los días.

10/3/2005

<< Marzo de 2005 >>
L M X J V S D
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31

Detalles:


Weblog 3 - Modo de lectura

Al hacer clic en Leer desde la página de inicio, aparece la fecha del día, un área de texto y un calendario en el que se puede hacer clic en los días que tienen entrada.

10/3/2005

Hoy empiezo mi weblog

<< Marzo de 2005 >>
L M X J V S D
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31

Detalles:


Weblog 4 - Borrar todo

La opción Borrar todo permite eliminar todas las entradas del weblog.


Weblog - Calendario

Para generar el calendario, se puede utilizar esta función

<?php
function calendario ($anyo, $mes, $diahoy, $enlaces)
{ global $db;

  $dias = array("L", "M", "X", "J", "V", "S", "D");
  $meses = array("", "Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio",
   "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre");
  $jd = gregoriantojd($mes, 1, $anyo);
  $dia = (jddayofweek($jd, 0)+6)%7;
  $diasemana = $dias[$dia];
  
  if ($anyo%400==0)
    $esbisiesto = 1;
  elseif ($anyo%100==0)
    $esbisiesto = 0;
  elseif ($anyo%4==0)
    $esbisiesto = 1;
  else
    $esbisiesto = 0;
  
  if ($esbisiesto)
    $durameses = array ( 0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
  else
    $durameses = array ( 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);

  if ($mes==1)
  { $mes_ant = 12;       $anyo_ant = $anyo-1; }
  else
  { $mes_ant = $mes - 1; $anyo_ant = $anyo; }
  
  if ($mes==12)
  { $mes_sig = 1;        $anyo_sig = $anyo+1; }
  else
  { $mes_sig = $mes + 1; $anyo_sig = $anyo; }
  
  if ($diahoy > $durameses[$mes_ant])
    $dia_ant = $durameses[$mes_ant];
  else $dia_ant = $diahoy;
  
  if ($diahoy > $durameses[$mes_sig])
    $dia_sig = $durameses[$mes_sig];
  else $dia_sig = $diahoy;
  
  print "<div class=\"calendario\">\n  <table border=\"1\" class=\"calendario\" >\n";
  if ($enlaces=="editar")
    print "    <caption><a href=\"editar.php?anyo=$anyo_ant&amp;mes=$mes_ant&dia=$dia_ant\"><<
      </a> $meses[$mes] de $anyo <a href=\"editar.php?anyo=$anyo_sig&amp;mes=$mes_sig&dia=$dia_sig\">>>
      </a>
    </caption>\n";
  else
    print "    <caption><a href=\"leer.php?anyo=$anyo_ant&amp;mes=$mes_ant&dia=$dia_ant\"><<
  </a> $meses[$mes] de $anyo <a href=\"leer.php?anyo=$anyo_sig&amp;mes=$mes_sig&dia=$dia_sig\">>>
  </a></caption>\n";
  
  print "    <tr>\n      <th>$dias[0]</th>\n      <th>$dias[1]</th>
      <th>$dias[2]</th>\n      <th>$dias[3]</th>\n      <th>$dias[4]</th>
      <th>$dias[5]</th>\n      <th>$dias[6]</th>\n    </tr>\n";
  for ($n=0; $n<=5; $n++)
  { $num_inicio = 1-$dia+$n*7;
    if ($num_inicio <= $durameses[$mes])
    { print "    <tr>\n";
      for ($i=0; $i<7; $i++)
      { $num = $num_inicio + $i; 
        if ($num > 0 && $num <= $durameses[$mes])
        { if ($enlaces=="editar")
            print "      <td class=\"enlace\"><a href=\"editar.php?anyo=$anyo&mes=$mes&dia=$num\">$num</a></td>\n";
          elseif ($enlaces=="leer")
          { $consulta = "SELECT * FROM diario WHERE anyo='$anyo' AND mes='$mes' AND dia='$num'";
            $resul = sqlite_array_query($db, $consulta, SQLITE_ASSOC);
            if (count($resul))
              print "      <td class=\"enlace\"><a href=\"leer.php?anyo=$anyo&mes=$mes&dia=$num\">$num</a></td>\n";
            else
              print "      <td>$num</td>\n";
          }
        }
        else
          print "      <td></td>\n";
      }
      print "    </tr>\n";
    }
  }
  print "  </table>\n</div>\n\n";
}
?>

Autor: Bartolomé Sintes Marco
Última modificación de esta página: 10 de marzo de 2005