Ver Mensaje Individual
  #1 (permalink)  
Antiguo 27/04/2007, 03:34
elbastardo
 
Fecha de Ingreso: septiembre-2006
Mensajes: 141
Antigüedad: 17 años, 7 meses
Puntos: 1
Calendario, no funciona, muestra fecha actual

Buenas, tengo el siguiente problema. Tengo un calendario en mi página para mostrar "Ediciones anteriores", el mismo encuentra perfectamente la fecha actual y la selecciona, el tema es que al clickear "Aceptar" carga la página con la última edición, no la que se seleccionó.

Dejo el código del calendario completo (perdón la extensión) y el de la definición de la fecha en la "Edición del día".

Calendario:
Código PHP:
<?
session_start
();
$g=split("-",$_SESSION['fecha']);
if(isset(
$prm) and $prm 0){
$m=$prm+$chm;}else{
$m$g[1]; ;}
if(isset(
$dia)){
$d=$dia;
}
else{

$d$g[2]; 
}    
// Finds today's date
$y$g[0];  

$agenda_hay=array();


$fecha=$y."-".$m."-".$d;




$no_of_days date('t',mktime(0,0,0,$m,$d,$y)); // This is to calculate number of days in a month

$mn=date('M',mktime(0,0,0,$m,$d,$y)); // Month is calculated to display at the top of the calendar

$yn=date('Y',mktime(0,0,0,$m,$d,$y)); // Year is calculated to display at the top of the calendar

$jdate('w',mktime(0,0,0,$m,1,$y)); // This will calculate the week day of the first day of the month

$dia_semana_date('D',mktime(0,0,0,$m,$d,$y));




$primer_dia=$y."-".$m."-1";
$ultimo_dia=$y."-".$m."-".$no_of_days;



for(
$k=1$k<=$j$k++){ // Adjustment of date starting
$adj .="<td>&nbsp;</td>";
}






switch (
$mn) {
case 
"Jan":
$mn="Enero";
break;
case 
"Febrero":
$mn="Feb";
break;
case 
"Mar":
$mn="Marzp";
break;
case 
"Apr":
$mn="Abril";
break;
case 
"May":
$mn="Mayo";
break;
case 
"Jun":
$mn="Junio";
break;
case 
"Jul":
$mn="Julio";
break;
case 
"Aug":
$mn="Agosto";
break;
case 
"Sep":
$mn="Setiembre";
break;
case 
"Oct":
$mn="Octubre";
break;
case 
"Nov":
$mn="Noviembre";
break;
case 
"Dec":
$mn="Diciembre";
break;
}




/// Starting of top line showing name of the days of the week
?>
<html><head><title>Seleccione la Fecha de la Edición</title><link href="estilos.css" rel="stylesheet" type="text/css">
<script>
function ir(){
window.opener.location="index.php";
window.self.close();

}

</script>

</head><body>
<?
echo " <table border='1' bordercolor='#F4FBFE' cellspacing='0' cellpadding='1' align=center>

<tr><td>"
;

echo 
"<table cellspacing='0' cellpadding='1' align=center width='250' border='0'><td align=center bgcolor='#F4FBFE'><font size='2' face='Tahoma'> <a href='calendario.php?prm=$m&chm=-1'><</a> </td><td colspan=5 align=center bgcolor='#F4FBFE'><font size='2' face='Tahoma'>$mn $yn </td><td align=center bgcolor='#F4FBFE'><font size='2' face='Tahoma'> <a href='calendario.php?prm=$m&chm=1'>></a> </td></tr><tr>";

echo 
"<td><font size='1' face='Tahoma'><b>Dom</b></font></td><td><font size='1' face='Tahoma'><b>Lun</b></font></td><td><font size='1' face='Tahoma'><b>Mar</b></font></td><td><font size='1' face='Tahoma'><b>Mié</b></font></td><td><font size='1' face='Tahoma'><b>Jue</b></font></td><td><font size='1' face='Tahoma'><b>Vie</b></font></td><td><font size='1' face='Tahoma'><b>Sáb</b></font></td></tr><tr>";

////// End of the top line showing name of the days of the week//////////

//////// Starting of the days//////////
for($i=1;$i<=$no_of_days;$i++){

    
$ii="0".$i;
    if (
$i!=$d)        
        
            echo 
$adj."<td valign=top><a class=\"linkCalendario\" href=\"calendario.php?prm=$m&dia=$i\">$i</a><br>"
        
    else
echo 
$adj."<td valign=top class=\"tabladerecha\"><a class=\"linkCalendario\" href=\"calendario.php?prm=$m&dia=$d\">$i</a><br>"
echo 
" </b></td>";
$adj='';
$j ++;
if(
$j==7){echo "</tr><tr>";
$j=0;}

}

echo 
"<tr><td colspan=7 align=center></td></tr>"
echo 
"</tr></table></td></tr></table>";
echo 
"<center><font face='Verdana' size='2'></center></font>";
//$fecha="$y-$m-$d";
$_SESSION['fecha']=$fecha;
?>
<table border="0" cellpadding="1" cellspacing="0" class="tabladerecha" align="center" width="95%">
 <tr> 
          <td>&nbsp;</td>
          <td class="titulonaranjachico">Fecha Edición Actual:

<? $g=split("-",$_SESSION['fecha'])?> 

  <?echo $g[2]."/".$g[1]."/".$g[0]?> <a href="#" onClick="ir()" class="linkCalendario">Aceptar</a></td>
        </tr>


        
        
      </table>
Código en el cual estampa la fecha en la edición del día:
Código PHP:
<?
session_start
();

ini_set'display_errors''1');
extract$_SERVEREXTR_SKIP'');
extract$_SESSIONEXTR_SKIP'');
extract$_REQUESTEXTR_SKIP'');

if ( 
date("H") >= && date("H") <= )
{
    
$fecha date('Ymd')-1;
    
$_SESSION['fecha']= substr($fecha,0,4) . '-' substr($fecha,4,2) . '-' substr($fecha,6,2);
    
}
else
{
    
$fecha=date("Y-m-d");
    
$_SESSION['fecha']=$fecha;
}

$fecha_=$_SESSION['fecha'];

/*
if ($fecha_=="")
{
    $fecha=date("Y-m-d");
    $_SESSION['fecha']=$fecha;
}

$fecha_=$_SESSION['fecha'];
*/
Perdón si todo esto es demasiado extenso pero no sabía bien que parte mostrarles para que lo entiendan.

Agradezco muchísimo cualquier ayuda!..
Saludos