Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > PHP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 07-01-2014
jhonalone jhonalone is offline
Miembro
 
Registrado: sep 2007
Ubicación: Madrid
Posts: 547
Poder: 17
jhonalone Va por buen camino
Problemas comparando fechas

Hola, amigos.
Tengo un problema con un script.
Quisiera averiguar si un visitante es mayor de edad. Para eso, comparo la fecha obtenida de un formulario HTML y la obtenida con getdate(del servidor).
El problema que tengo es que siendo ambas fechas el mismo mes (enero, por ejemplo) el servidor considera menor la fecha obtenida con getdate() que la obtenida desde el formulario.
A continuación os dejo la parte del script que hace esta tarea, por si alguien puede echarme una mano.

<?php


$dia = $_POST['day'];
$mes = $_POST['month'];
$anio = $_POST['year'];

$control = $_POST["Control1"];

setlocale (LC_TIME, "es_ES");

$hoy = getdate();
$AnioActual = $hoy[year];
$mesActual = $hoy[mon];
$diaActual = $hoy[mday];


if ($AnioActual-$anio <=18) // Diferencia entre años MENOR O IGUAL que 18
{
if ($AnioActual-$anio <18) // diferencia entre años MENOR que 18
{
$control = "Error en la edad";
?>
<script type="text/javascript">
<!--
alert('Según la fecha del sistema Vd. es menor de edad año.');
//-->
</script>
<?php
} else // diferencia entre años IGUAL a 18
{
if ($MesActual <= $mes) // mes actual MENOR O IGUAL que cumpleaños
{
if ($MesActual < $mes) //mes actual MENOR que cumpleaños (no ha cumplido 18)
{echo($mesActual. "Actual" .$mes. "mes" .$anio. "Año" .$AnioActual. "AñoActual");
$control = "Error en la edad";//AQUI ES DONDE TENGO EL PROBLEMA, PUES CONSIDERA MENOR EL MES ACTUAL AUNQUE SEAN IGUALES (LO COMPRUEBO EN LA PANTALLA CON ECHO)

?>
<script type="text/javascript">
<!--
alert(' año igual mes actual menor.');
//-->
</script>
<?php
} else // mes actual y año actual igual que cumpleaños (Decide el dia del mes)
{
if ($DiaActual < $dia) // todavia no ha cumplido los 18
{ echo($mesActual. "Actual" .$mes. "mes" .$anio. "Año" .$AnioActual. "AñoActual");
$control = "Error en la edad";
?>
<script type="text/javascript">
<!--
alert(' año igual mes igual dia actual antes del cumpleaños.');
//-->
</script>
<?php
}
}
}
}
};

// Hay otras instrucciones que vienen al caso......................................
?>

Agradezco de antemano cualquier ayuda. Gracias.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Comparando momentos jorgegetafe Varios 1 04-11-2007 15:23:11
Comparando fechas Genner Varios 1 04-05-2006 19:19:31
Comparando valores nulos pyanqn Conexión con bases de datos 9 15-11-2005 21:09:32
DateTimePicker: problema comparando fechas Tomás OOP 7 06-09-2004 12:22:13
hacer una consulta comparando un campo hora. soyhugo SQL 2 16-04-2004 19:14:30


La franja horaria es GMT +2. Ahora son las 13:39:17.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi