Hola. Quiero obligar al usuario a introducir la fecha como dd/mm/yy. Para ello, de momento, he creado una función que hace lo siguiente. Comprueba que:
- Tiene 8 caracteres.
- Tiene un total de 2 caracteres "/".
- El carácter "/" está en las posiciones 3ª y 6ª.
- Es una fecha válida según calendario gregoriano.
El código es este:
Código PHP:
function comprobar_fecha($fecha_recibida){
$dia=substr($fecha_recibida,0,2);
$mes=substr($fecha_recibida,3,2);
$anio=substr($fecha_recibida,6,2);
if ((strlen($fecha_recibida) == 8) && (substr_count($fecha_recibida,"/") == 2) && substr($fecha_recibida,2,1) == "/") && substr($fecha_recibida,5,1) == "/") && checkdate($mes, $dia, $anio)) {
return TRUE;
else
return FALSE;
}
}
Ni siquiera sé si funciona. Quería ver si alguien puede echarle un vistazo para ver si funcionaría bien y también saber qué puedo hacer para que al perder el enfoque del campo de texto de un formulario, si fracasa la validación, muestre un mensaje recordando que ha introducido mal la fecha, sin tener que abandonar la página ni perder el resto de datos del formulario.
Gracias.