Buenas compañero,
Lo primero, en el segundo de los códigos que has puesto llamas a la variable $foto_name, la cual no es enviada por el formulario, de hecho el único campo de texto que puedo ver es el form_description, no te habrás equivocado ahí?
Vamos a probar con este código y ya me dirás si te funciona:
Código:
if (move_uploaded_file($_FILES['foto']['tmp_name'], "imagenes/avatares/".$_FILES['foto']['name']))
print "ok";
}else{
print "error";
}