Evitar fechas 00/00/0000 con mysql

Cuando trabajamos con fechas en mysql se guardan en formato yyyy-mm-dd mientras que normalmente en pantalla las queremos ver en formato dd/mm/YYYY.

Para ellos vamos a ver las consultas necesarias para guardar y recuperar los datos y evitar que nos aparezcan datos 00/00/0000

Cuando recuperamos el valor ponemos en la sql

if(fecha is not null,date_format(fecha,'%d/%m/%Y'),'') as fec

Si llamamos siempre a date_format cuando el valor es null el resultado es 00/00/0000

Y a la hora de guardar solo formateamos la fecha si tiene valor

update la_tabla_que_sea set
 fecha=if ('".$_POST['campo_fecha_web']."'!='',str_to_date('".$_POST['campo_fecha_web']."','%d/%m/%Y'),null)
where id=id_necesario_para_actualizar

Con esto evitamos llamar a str_to_date si el valor está vacio, que es lo que origina que se guarde el 00/00/0000

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

* Please enter the Biggest Number