Hola:
A simple vista está correcto, aunque siempre es mejor hacer el envío con un botón del tipo submit...
Deberías controlar cuales son los datos que llegan a php (con var_dumo o print_r)...
Y de paso controlar en la consola de errores de tu navegador, si se produce alguno.
Saludos