Foros del Web » Programando para Internet » PHP »

calendario en php

Estas en el tema de calendario en php en el foro de PHP en Foros del Web. Hola, que tal? Estoy tratando de hacer un calendario en PHP para mostrar los dias cada mes. Por ejemplo, el primer dia del mes de ...
  #1 (permalink)  
Antiguo 18/10/2011, 16:15
Avatar de morfasto  
Fecha de Ingreso: julio-2011
Ubicación: Lima
Mensajes: 291
Antigüedad: 12 años, 9 meses
Puntos: 8
calendario en php

Hola, que tal?

Estoy tratando de hacer un calendario en PHP para mostrar los dias cada mes.

Por ejemplo, el primer dia del mes de octubre del 2011 cae sabado, el segundo cae domingo... el ultimo dia que es 31 cae lunes.

Como puedo hacer para calcular que dia cae el pimero de octubre del 2011 para poder poner los demas dias y como puedo calcular cuantos dias tiene cada mes?

Muchas gracias!
  #2 (permalink)  
Antiguo 18/10/2011, 16:29
 
Fecha de Ingreso: agosto-2011
Ubicación: la paz
Mensajes: 83
Antigüedad: 12 años, 8 meses
Puntos: 4
Respuesta: calendario en php

aqui hay uno bueno espero te sirva
http://www.sectorweb.net/2007/05/07/calendario-emergente-en-formularios/ solo es descargartelo he implementarlo
  #3 (permalink)  
Antiguo 18/10/2011, 16:35
Avatar de morfasto  
Fecha de Ingreso: julio-2011
Ubicación: Lima
Mensajes: 291
Antigüedad: 12 años, 9 meses
Puntos: 8
Respuesta: calendario en php

Lo que necesito es aprender a hacer uno, no copiarme de uno, ademas, ese que me pasaste esta en Javascript.
  #4 (permalink)  
Antiguo 18/10/2011, 16:39
Avatar de morfasto  
Fecha de Ingreso: julio-2011
Ubicación: Lima
Mensajes: 291
Antigüedad: 12 años, 9 meses
Puntos: 8
Respuesta: calendario en php

Se que todos los años los meses tienen:

Enero 31
Febrero 28 (29 si el año es multiplo de 4, osea bisiesto)
Marzo 31
Abril 30
Mayo 31
Junio 30
Julio 31
Agosto 30
Setiembre 31
Octubre 30
Noviembre 31
Diciembre 30

Pero, como puedo saber que dia de la semana cae cada dia del mes?
  #5 (permalink)  
Antiguo 18/10/2011, 16:47
Avatar de skiper0125  
Fecha de Ingreso: octubre-2010
Ubicación: $this->Mexico('Toluca');
Mensajes: 1.127
Antigüedad: 13 años, 6 meses
Puntos: 511
Respuesta: calendario en php

Cita:
Iniciado por morfasto Ver Mensaje
Pero, como puedo saber que dia de la semana cae cada dia del mes?
Lo que deseas saber es fácil.

Código PHP:
Ver original
  1. echo date("w", strtotime("01-10-2011"));
  2. //6

en relacion al resultado que te arroja es:

domingo = 0
lunes = 1
martes = 2
miercoles = 3
jueves = 4
viernes = 5
sabado = 6

Lo que te recomiendo es que leas esto

Te ayudará mucho

Saludos
__________________
Recuerda que estamos aquí para orientarte, y no para hacer tu trabajo.
Si mi aporte fue de ayuda, recuerda que agradecer no cuesta nada +1

Skiper0125
  #6 (permalink)  
Antiguo 18/10/2011, 17:19
Avatar de morfasto  
Fecha de Ingreso: julio-2011
Ubicación: Lima
Mensajes: 291
Antigüedad: 12 años, 9 meses
Puntos: 8
Respuesta: calendario en php

Muchas gracias! eso es lo que necesitaba :)
  #7 (permalink)  
Antiguo 18/10/2011, 17:35
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: calendario en php

Como una nota, tambien te puedes ahorrar el tener que programar cuantos dias tiene cada mes y que dia cae. Para obtener que cae el ultimo dia de cualquier mes podemos hacer:
Código PHP:
Ver original
  1. //$mes es el numero del mes para el cual desees el ultimo dia (valores entre 1 y 12):
  2. //$anio es para el anio que lo desees
  3. date("w", mktime(0,0,0,$mes,date("t", mktime(0,0,0,$mes,1,$anio)), $anio));
  #8 (permalink)  
Antiguo 18/10/2011, 19:27
 
Fecha de Ingreso: marzo-2008
Mensajes: 1.020
Antigüedad: 16 años, 1 mes
Puntos: 21
Respuesta: calendario en php

Mira esto que te preparé:

Código PHP:

function cdm($dia null$mes null$anio null) {
    
    
$timestamp mktime(0,0,0,$mes,$dia$anio);
    
    return 
$timestamp;
}


function 
calendario($mes null$anio null) {
    
    
$days "";
  
    
    
$timestamp cdm(1$mes$anio);  
    
$cantidadDias date('t'$timestamp);
    
    
$days .= '<ul>';
        
        for (
$day 1$day <= $cantidadDias$day++) {
            
$days .=  '<li>'$day " | " .  date('l'cdm($day$mes$anio)) .'</li>';
        }
    
    
$days .= '</ul>';

    
    
    return 
$days;    
}


echo 
'<div id="lista">';

echo 
calendario($mes 10$anio 2012);

echo 
'</div>'
__________________
_
  #9 (permalink)  
Antiguo 18/10/2011, 19:59
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: calendario en php

No está de más practicar el tema, yo también hice algo así como opzina, pero de otra forma y con los días en español:

Código PHP:
Ver original
  1. <?php
  2. function calendar($m, $y) {
  3.     setlocale(LC_ALL, "es_ES@euro", "es_ES", "esp");
  4.     $data = '';
  5.     $ndays = date('t', strtotime("01-$m-$y"));
  6.     $data .= '<ul>';
  7.     for ($i = 0; $i < $ndays; $i++) {
  8.         $ts = strtotime("01-$m-$y + $i day");
  9.         $data .= '<li>' . date('d', $ts) . ' | ';
  10.         $data .= strftime("%A", $ts) . '</li>';
  11.     }
  12.     $data .= '</ul>';
  13.     return $data;
  14. }
  15.  
  16. echo calendar(01, 2011);

Espero que le sirva a alguien más.

Saludos.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #10 (permalink)  
Antiguo 18/10/2011, 20:22
 
Fecha de Ingreso: marzo-2008
Mensajes: 1.020
Antigüedad: 16 años, 1 mes
Puntos: 21
Respuesta: calendario en php

Gracias, buen aporte. Si como tu lo haces o con un array con dias en español.

Saludos.
__________________
_

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 17:32.