Foros del Web » Programando para Internet » PHP »

Calendario

Estas en el tema de Calendario en el foro de PHP en Foros del Web. Tengo el siguiente codigo, lo cual es un calendario y lo quiero usar para determinar fechas segun la seleccion. <? $anoInicial = '1900'; $anoFinal = ...
  #1 (permalink)  
Antiguo 14/09/2010, 08:39
 
Fecha de Ingreso: agosto-2010
Ubicación: Mexico
Mensajes: 180
Antigüedad: 13 años, 8 meses
Puntos: 0
Calendario

Tengo el siguiente codigo, lo cual es un calendario y lo quiero usar para determinar fechas segun la seleccion.

<?
$anoInicial = '1900';
$anoFinal = '2100';
$funcionTratarFecha = 'document.location = "?dia="+dia+"&mes="+mes+"&ano="+ano;';
?><script>
function tratarFecha(dia,mes,ano){
<?=$funcionTratarFecha?>
}
</script>
<style>
.m1 {
font-family:MS Sans Serif;
font-size:8pt
}
a {
text-decoration:none;
color:#000000;
}
</style>
<table border="0" cellpadding="5" cellspacing="0" bgcolor="#D4D0C8">
<tr>
<td width="100%">
<?
$fecha = getdate(time());
if(isset($_POST["dia"]))$dia = $_POST["dia"];
else $dia = $fecha['mday'];
if(isset($_POST["mes"]))$mes = $_POST["mes"];
else $mes = $fecha['mon'];
if(isset($_POST["ano"]))$ano = $_POST["ano"];
else $ano = $fecha['year'];
$fecha = mktime(0,0,0,$mes,$dia,$ano);
$fechaInicioMes = mktime(0,0,0,$mes,1,$ano);
$fechaInicioMes = date("w",$fechaInicioMes);
?>
<select size="1" name="mes" class="m1" onchange="document.location = '?dia=<?=$dia?>&mes=' + document.forms[0].mes.value + '&ano=<?=$ano?>';">
<?
$meses = Array ('enero','febrero','marzo','abril','mayo','junio', 'julio','agosto','septiembre','octubre','noviembre ','diciembre');
for($i = 1; $i <= 12; $i++){
echo ' <option ';
if($mes == $i)echo 'selected ';
echo 'value="'.$i.'">'.$meses[$i-1]."\n";
}
?>
</select>&nbsp;&nbsp;&nbsp;<select size="1" name="ano" class="m1" onchange="document.location = '?dia=<?=$dia?>&mes=<?=$mes?>&ano=' + document.forms[0].ano.value;">
<?
for ($i = $anoInicial; $i <= $anoFinal; $i++){
echo ' <option ';
if($ano == $i)
echo 'selected ';
echo 'value="'.$i.'">'.$i."\n";
}
?>
</select><br>
<font size="1">&nbsp;</font><table border="0" cellpadding="2" cellspacing="0" width="100%" class="m1" bgcolor="#FFFFFF" height="100%">
<?
$diasSem = Array ('L','M','M','J','V','S','D');
$ultimoDia = date('t',$fecha);
$numMes = 0;
for ($fila = 0; $fila < 7; $fila++){
echo " <tr>\n";
for ($coln = 0; $coln < 7; $coln++){
$posicion = Array (1,2,3,4,5,6,0);
echo ' <td width="14%" height="19"';
if($fila == 0)echo ' bgcolor="#808080"';
if($dia-1 == $numMes)echo ' bgcolor="#0A246A"';
echo " align=\"center\">\n";
echo ' ';
if($fila == 0)echo '<font color="#D4D0C8">'.$diasSem[$coln];
elseif(($numMes && $numMes < $ultimoDia) || (!$numMes && $posicion[$coln] == $fechaInicioMes)){
echo '<a href="#" onclick="tratarFecha('.(++$numMes).','.$mes.','.$a no.')">';
if($dia == $numMes)echo '<font color="#FFFFFF">';
echo ($numMes).'</a>';
}
echo "</td>\n";
}
echo " </tr>\n";
}
?>
  #2 (permalink)  
Antiguo 14/09/2010, 08:46
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Calendario

Cita:
Tengo el siguiente codigo, lo cual es un calendario y lo quiero usar para determinar fechas segun la seleccion.
es un aporte? una pregunta?... no entiendo :S
__________________
More about me...
~ @rhyudek1
~ Github
  #3 (permalink)  
Antiguo 14/09/2010, 09:08
 
Fecha de Ingreso: agosto-2010
Ubicación: Mexico
Mensajes: 180
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Calendario

tengo pregunta de como usar este calendario para usar la fecha clickeada en el resto del programa lo modificare para ver si queda mas claro
  #4 (permalink)  
Antiguo 14/09/2010, 09:12
 
Fecha de Ingreso: agosto-2010
Ubicación: Mexico
Mensajes: 180
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Calendario

El campo al que quiero meter la fecha del calendario,
Código PHP:
<td>             
        PRIMERA RENOVACION DE CONTRATO<BR/>
        <INPUT TYPE="TEXT" NAME="vMES" VALUE="<?PHP echo sumarmeses ($row[13], 1); ?>">
y elk calendario que quiero aprovechar para sacarle un valor con el formato DD/MM/AA
Código PHP:
        &nbsp;&nbsp;        <?
         $anoInicial 
'1900';
         
$anoFinal '2100';
         
$funcionTratarFecha 'document.location = "?dia="+dia+"&mes="+mes+"&ano="+ano;';
          
?><script>
         function tratarFecha(dia,mes,ano){
         <?=$funcionTratarFecha?>
         }
         </script>
         <style>
          .m1 {
             font-family:MS Sans Serif; 
             font-size:8pt
          }
          a {
             text-decoration:none;
             color:#000000;
           }
         </style>
          <table border="0" cellpadding="5" cellspacing="0" bgcolor="#D4D0C8">
           <tr>
             <td width="100%">
             <?
              $fecha 
getdate(time());
              if(isset(
$_POST["dia"]))$dia $_POST["dia"];
              else 
$dia $fecha['mday'];
              if(isset(
$_POST["mes"]))$mes $_POST["mes"];
               else 
$mes $fecha['mon'];
              if(isset(
$_POST["ano"]))$ano $_POST["ano"];
              else 
$ano $fecha['year'];
              
$fecha mktime(0,0,0,$mes,$dia,$ano);
              
$fechaInicioMes mktime(0,0,0,$mes,1,$ano);
              
$fechaInicioMes date("w",$fechaInicioMes);
                
?>
              <select size="1" name="mes" class="m1" onchange="document.location = '?dia=<?=$dia?>&mes=' + document.forms[0].mes.value + '&ano=<?=$ano?>';">
               <?
               $meses 
= Array ('enero','febrero','marzo','abril','mayo','junio','julio','agosto','septiembre','octubre','noviembre','diciembre');
              for(
$i 1$i <= 12$i++){
               echo 
'      <option ';
               if(
$mes == $i)echo 'selected ';
                echo 
'value="'.$i.'">'.$meses[$i-1]."\n";
              }
              
?>
               </select>&nbsp;&nbsp;&nbsp;<select size="1" name="ano" class="m1" onchange="document.location = '?dia=<?=$dia?>&mes=<?=$mes?>&ano=' + document.forms[0].ano.value;">
              <?
                 
for ($i $anoInicial$i <= $anoFinal$i++){
                    echo 
'      <option ';
                    if(
$ano == $i)
                     echo 
'selected ';
                    echo 
'value="'.$i.'">'.$i."\n";
                }
               
?>
               </select><br>
               <font size="1">&nbsp;</font><table border="0" cellpadding="2" cellspacing="0" width="100%" class="m1" bgcolor="#FFFFFF" height="100%">
               <?
               $diasSem 
= Array ('L','M','M','J','V','S','D');
                
$ultimoDia date('t',$fecha);
               
$numMes 0
                for (
$fila 0$fila 7$fila++){
                   echo 
"      <tr>\n";
                    for (
$coln 0$coln 7$coln++){
                    
$posicion = Array (1,2,3,4,5,6,0);
                    echo 
'        <td width="14%" height="19"';
                    if(
$fila == 0)echo ' bgcolor="#808080"';
                    if(
$dia-== $numMes)echo ' bgcolor="#0A246A"';
                    echo 
" align=\"center\">\n";
                     echo 
'        ';
                    if(
$fila == 0)echo '<font color="#D4D0C8">'.$diasSem[$coln];
                    elseif((
$numMes && $numMes $ultimoDia) || (!$numMes && $posicion[$coln] == $fechaInicioMes)){
                     echo 
'<a href="#" onclick="tratarFecha('.(++$numMes).','.$mes.','.$ano.')">';
                    if(
$dia == $numMes)echo '<font color="#FFFFFF">';
                     echo (
$numMes).'</a>';
                   }
                 echo 
"</td>\n";
                }
               echo 
"      </tr>\n";
              } 
             
?>
           </table>
          </td>
  #5 (permalink)  
Antiguo 14/09/2010, 11:15
 
Fecha de Ingreso: agosto-2010
Ubicación: Mexico
Mensajes: 180
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Calendario

Lo que quiero es una solucion como esta solo que me falta la funcion
Código PHP:
 <?
         $anoInicial 
'1900';
         
$anoFinal '2100';
         
$funcionTratarFecha 'document.location = "?dia="+dia+"&mes="+mes+"&ano="+ano;';
        
?>
        <script>
          function tratarFecha(dia,mes,ano){
           <?=$funcionTratarFecha?>
          }
        </script>
        <style>
         .m1 
         {
          font-family:MS Sans Serif;
          font-size:8pt
         }
         a 
         {
          text-decoration:none;
          color:#000000;
         }
        </style>
 
         <table border="0" cellpadding="5" cellspacing="0" bgcolor="#D4D0C8">
          <tr>
           <td >
            <?
            $fecha 
getdate(time());
            
//var_dump($fecha);
            
if(isset($_GET["dia"]))
             
$dia $_GET["dia"];
            else 
$dia $fecha['mday'];
            if(isset(
$_GET["mes"]))
             
$mes $_GET["mes"];
            else 
$mes $fecha['mon'];
            if(isset(
$_GET["ano"]))
             
$ano $_GET["ano"];
            else 
$ano $fecha['year'];
            
$fecha mktime(0,0,0,$mes,$dia,$ano);
            
$fechaInicioMes mktime(0,0,0,$mes,1,$ano);
            
$fechaInicioMes date("w",$fechaInicioMes);
            
?>
            <select size="1" name="mes" class="m1" onchange="document.location = '?dia=<?=$dia?>&mes=' + document.forms[0].mes.value + '&ano=<?=$ano?>';">
            <?
            $meses 
= Array ('enero','febrero','marzo','abril','mayo','junio','julio','agosto','septiembre','octubre','noviembre','diciembre');
            for(
$i 1$i <= 12$i++)
            {
             echo 
'      <option ';
             if(
$mes == $i)
              echo 
'selected ';
             echo 
'value="'.$i.'">'.$meses[$i-1]."\n";
            }
            
?>
            </select>&nbsp;&nbsp;&nbsp;
            <select size="1" name="ano" class="m1" onchange="document.location = '?dia=<?=$dia?>&mes=<?=$mes?>&ano=' + document.forms[0].ano.value;">
            <?
             
for ($i $anoInicial$i <= $anoFinal$i++)
             {
                echo 
'      <option ';
                if(
$ano == $i)
                 echo 
'selected ';
                echo 
'value="'.$i.'">'.$i."\n";
              }
            
?>
            </select><br>
            <font size="1">&nbsp;</font><table border="0" cellpadding="2" cellspacing="0" width="100%" class="m1" bgcolor="#FFFFFF" height="100%">
            <?
              $diasSem 
= Array ('L','M','M','J','V','S','D');
              
$ultimoDia date('t',$fecha);
              
$numMes 0;
              for (
$fila 0$fila 7$fila++)
              {
               echo 
"      <tr>\n";
               for (
$coln 0$coln 7$coln++)
               {
                
$posicion = Array (1,2,3,4,5,6,0);
                echo 
'        <td width="14%" height="19"';
                if(
$fila == 0)
                 echo 
' bgcolor="#808080"';
                if(
$dia-== $numMes)
                 echo 
' bgcolor="#0A246A"';
                echo 
" align=\"center\">\n";
                echo 
'        ';
                if(
$fila == 0)
                 echo 
'<font color="#D4D0C8">'.$diasSem[$coln];
                elseif((
$numMes && $numMes $ultimoDia) || (!$numMes && $posicion[$coln] == $fechaInicioMes)){
                 echo 
'<a href="#" onclick="tratarFecha('.(++$numMes).','.$mes.','.$ano.')">';
                if(
$dia == $numMes)
                 echo 
'<font color="#FFFFFF">';
                echo (
$numMes).'</a>';
               }
               echo 
"</td>\n";
              }
              echo 
"      </tr>\n";
             }
            
?>
           </table>
          </td>
         </tr>
        </table>
        <input type="radio" name="vFContrato" value="INICIO" /> FECHA INICIAL    <br />
        <input type="radio" name="vFContrato" value="RENEW1" /> PRIMERA RENOVACION    <br />
        <input type="radio" name="vFContrato" value="RENEW2" /> SEGUNDA RENOVACION    <br />
        <input type="radio" name="vFContrato" value="RENEW3" /> TERCERA RENOVACION <BR/>
        <INPUT TYPE="SUBMIT" VALUE="ASIGNAR FECHA" NAME="ASIGNAFECHA">

Etiquetas: calendario
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:15.