Bueno, compararía los valores que están en la página con los valores que el usuario ha cambiado. Luego publicaría los valores modificados en el servidor, crearía dinámicamente mi consulta y actualizaría solo los campos que cambiaron.
Además, definitivamente debería usar transacciones si está actualizando varias tablas.