Avatar ·

Formato de data PHP para inserir no campo DATETIME no MySQL: como evitar erros?

Olá a todos! Sou novo em PHP e MySQL, e tive um problema ao salvar a data no banco de dados.

Tenho um formulário onde o usuário insere uma data no formato dd.mm.aaaa (por exemplo, 25.12.2023). Quero salvar essa data no campo DATETIME no MySQL. Estou usando a função PHP date() para formatar, mas nada funciona corretamente.

Aqui está meu código:

<?php
$user_date = $_POST['user_date']; // Vem "25.12.2023"
$formatted_date = date('Y-m-d H:i:s', strtotime($user_date));

$query = "INSERT INTO events (event_date) VALUES ('$formatted_date')";
mysqli_query($conn, $query);
?>

O problema é que no banco de dados é salvo 1970-01-01 00:00:00 ou uma string vazia. Tentei