Ma certo! Eureka! Come ho fatto a non notarlo prima! Dopo che ho capito che le variabili hanno il giusto valore ma vengono salvate come vuote nel database, sono andato a rileggere la query con attenzione. Alla fine l'errore è spesso dovuto al motivo più semplice, un errore di battitura.
Ti evidenzio in rosso gli errori di battitura nella query:

UPDATE events SET id = '$id', titolonuova = '$ud_titolonuova', mese_inizionuova = '$ud_mese_inizionuova', giorno_inizionuova = '$ud_giorno_inizionuova', anno_inizionuova = '$ud_anno_inizionuova', mese_finenuova = '$ud_mese_fineonuova', giorno_finenuova = '$ud_giorno_fineonuova', anno_finenuova = '$ud_anno_fineonuova' WHERE id = '$id'

Hai notato ora? Hai sbagliato a scrivere i nomi delle 3 variabili, hai messo "fineonuova" anzichè "finenuova".