sql >> Base de Datos >  >> RDS >> Mysql

La fecha se inserta como 0000-00-00 00:00:00 en mysql

Estás en el camino correcto con tu date('Y-m-d H:i:s',$date); solución, pero la función date() toma una marca de tiempo como su segundo argumento, no una fecha.

Supongo que sus ejemplos están en formato de fecha estadounidense, ya que se ven de esa manera. Puede hacer esto, y debería obtener los valores que está buscando:

date('Y-m-d H:i:s', strtotime($date));

La razón por la que no funciona es porque espera que la fecha tenga el formato AAAA-MM-DD e intenta evaluar sus datos así. Pero tiene MM/DD/YY, lo que lo confunde. El ejemplo del 11/06/10 es el único que puede interpretarse como una fecha válida AAAA-MM-DD de sus ejemplos, pero PHP cree que quiere decir 06 como el año, 11 como el mes y 10 como el día.