Foros del Web » Programando para Internet » PHP »

saber si una fecha es mayor a un dia definido

Estas en el tema de saber si una fecha es mayor a un dia definido en el foro de PHP en Foros del Web. buenas tardes nuevamente: Quisiera me apoyaran a solucionar un pequeño problemas que tengo al comparar un par de fechas, para esto, le explico: * Si ...
  #1 (permalink)  
Antiguo 23/10/2012, 12:57
 
Fecha de Ingreso: junio-2007
Ubicación: en una casa
Mensajes: 42
Antigüedad: 16 años, 9 meses
Puntos: 0
Pregunta saber si una fecha es mayor a un dia definido

buenas tardes nuevamente:

Quisiera me apoyaran a solucionar un pequeño problemas que tengo al comparar un par de fechas, para esto, le explico:

* Si tengo una fecha inicial = 01/10/2012 (01 de octubre de 2012)
* y tengo otra fecha final = 15/10/2012 (15 de octubre de 2012)

estas fechas las capturo en un form

Como saber si la fecha final el menor que 15 (el dia 15), es decir... si mis fechas son la primera: 16/10/2012 y la segunda: 31/10/2012 (como ejemplo), obviamente el dia especificado es menor a la segunda fecha:

dia=15
si 15/10/2012 (fecha final) <= dia, entonces el dia es tipo 1, de lo contrario si (31/10/2012) fecha final entonces es dia tipo 2

no se si me entiendan "pero creo que si"... parte de mi codigo:

Código HTML:
<input name="fechainicial" type="text" size="8" id="fechainicial" class="date-pick"/>
<input name="fechafinal" type="text" size="8" id="fechafinal" class="date-pick"  "/> 
Código PHP:
  <?php
     $dia
=date("d",15)
     if (
$_POST['fechafinal']<$dia {
         echo 
'la fecha es menor que 15:  ';
         echo 
"el folio ID es".'1'.date('mY');
        }else {
            echo 
"el folio ID es".'2'.date('mY');
     }
?>
Antes que nada mil gracias... saludos
  #2 (permalink)  
Antiguo 23/10/2012, 13:43
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 9 meses
Puntos: 1012
Respuesta: saber si una fecha es mayor a un dia definido

puedes usar DAYOFMONTH() de mysql para saber el día del mes de una fecha dada
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #3 (permalink)  
Antiguo 23/10/2012, 13:55
 
Fecha de Ingreso: junio-2007
Ubicación: en una casa
Mensajes: 42
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: saber si una fecha es mayor a un dia definido

Cita:
Iniciado por IsaBelM Ver Mensaje
puedes usar DAYOFMONTH() de mysql para saber el día del mes de una fecha dada
disculpame, pero el dia no lo tomo de una fecha de mi BD para extraerla con mysql, de hecho todavia no la almaceno... porque no encuentro el modo de como obtener ese folio sea 1 si la fecha final es menor o igual a 15 y folio 2 si la fecha final es mayor que 15

saludos
  #4 (permalink)  
Antiguo 23/10/2012, 14:04
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 9 meses
Puntos: 1012
Respuesta: saber si una fecha es mayor a un dia definido

no tienes que extraer, ni guardar nada
Cita:
$conexion = (ysql_connect(bla,bla,bla)) or die(mysql_error());
$sql = mysql_query("select DAYOFMONTH('2012-10-23') AS dia");
$registros = mysql_fetch_array($sql);
echo $registros['dia'];
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #5 (permalink)  
Antiguo 23/10/2012, 14:44
 
Fecha de Ingreso: junio-2007
Ubicación: en una casa
Mensajes: 42
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: saber si una fecha es mayor a un dia definido

Cita:
Iniciado por IsaBelM Ver Mensaje
no tienes que extraer, ni guardar nada
hijoles soy tan novato... que no entiendo... pero bueno... te pongo mi codigo, gracias por tu ayuda... pero no me sale... me marca error

Código PHP:
   <?php
  $sql 
mysql_query("select DAYOFMONTH('2012-01-15') AS dia"); /*para fijar el dia*/
  
$resultado mysql_fetch_array($sql);
//  echo $resultado['dia'];
 
   
if ($_POST['fechafinal']<=$resultado)  /* fecha final la traigo de un form que se encuentra en la misma pagina*/
      
{
        echo 
"el folio ID es".'1'.date('mY');
        }else {
            echo 
"el folio ID es".'2'.date('mY');
     }
     
?>

Última edición por Casper2007; 23/10/2012 a las 14:52
  #6 (permalink)  
Antiguo 23/10/2012, 14:55
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 9 meses
Puntos: 1012
Respuesta: saber si una fecha es mayor a un dia definido

Cita:
<?php
// aquí conectate a una bd cualquiera
$sql = mysql_query("select DAYOFMONTH('2012-01-15') AS dia"); /*para fijar el dia*/
$resultado = mysql_fetch_array($sql);
echo $resultado['dia']; // no hace falta mostrar nada

if ($_POST['fechafinal']<=$resultado) // esta comparación esta mal - if ($_POST['fechafinal']<=$resultado['dia'])
{
echo 'la fecha es menor que 15: ';
echo "el folio ID es".'1'.date('mY');
}else {
echo "el folio ID es".'2'.date('mY');
}

?>
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #7 (permalink)  
Antiguo 23/10/2012, 15:03
 
Fecha de Ingreso: junio-2007
Ubicación: en una casa
Mensajes: 42
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: saber si una fecha es mayor a un dia definido

ya lo escribi tal cual y me manda el error: Notice: Undefined index: fechafinal

Código PHP:
   <?php
  $link
=Conectarse();  /* se conecta a la BD */
  
$sql mysql_query("select DAYOFMONTH('2012-01-15') AS dia");
  
$resultado mysql_fetch_array($sql);
  
 
/*fechafinal la traigo de un input que se encuentra en el mismo form con esta comparacion*/
  
if ($_POST['fechafinal']<=$resultado['dia']) {
         echo 
"el folio ID es".'1'.date('mY');
        }else {
            echo 
"el folio ID es".'2'.date('mY');
     }
?>
gracias
  #8 (permalink)  
Antiguo 23/10/2012, 15:23
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 9 meses
Puntos: 1012
Respuesta: saber si una fecha es mayor a un dia definido

seria bueno que configuraras .htaccess para que no se mostrarán errores de tan bajo nivel. si no lo haces, otra solución es usar isset para saber si la variables está definida
Cita:
$variable = isset($_POST['fechafinal']) ? $_POST['fechafinal'] : null ;
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #9 (permalink)  
Antiguo 23/10/2012, 19:50
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 8 meses
Puntos: 793
Respuesta: saber si una fecha es mayor a un dia definido

No se entiende muy bien pero usa todas las funciones de hora y fecha, no uses mysql para este caso y jamás ocultes los errores.

día de una fecha:

Código PHP:
Ver original
  1. echo date('d', strtotime('2012-01-15'));

Te faltan las condiciones.

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 24/10/2012, 08:51
 
Fecha de Ingreso: junio-2007
Ubicación: en una casa
Mensajes: 42
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: saber si una fecha es mayor a un dia definido

Cita:
Iniciado por andresdzphp Ver Mensaje
No se entiende muy bien pero usa todas las [URL="http://www.php.net/manual/es/ref.datetime.php"]funciones de hora y fecha[/URL], no uses mysql para este caso y jamás ocultes los errores.

día de una fecha:

Código PHP:
Ver original
  1. echo date('d', strtotime('2012-01-15'));

Te faltan las condiciones.

Saludos.
bueno aqui esta la solucion (gracias a un amigo forero que me ayudo a la solucion)....

Código HTML:
<script type="text/javascript" charset="utf-8">
function compararFecha(fecha1,fecha2)
  	  {
           var fecha_ini = fecha1;
             alert(fecha_ini);
			if(parseInt(fecha_ini.substring(0,2)) <= 15 ){
               folio=fecha_ini.substring(6,10)+fecha_ini.substring(3,5) + "1";
               $("#folio").attr("value",folio);
        	  }else{
          		folio=fecha_ini.substring(6,10)+fecha_ini.substring(3,5) + "2";
        		$("#folio").attr("value",folio);
              }			
    }
</script> 
la llamo desde otra funcion:
compararFecha(campo1,campo2);

donde campo1 y campo2, bienen de una asignacion previa de fechainicial y fechafinal...

tema cerrado...

Última edición por Casper2007; 24/10/2012 a las 13:46

Etiquetas: comparacion, fechafin, menor
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 02:42.