Ante todo muchísimas gracias por tu respuesta y por tu paciencia!
He probado a hacer lo que me has dicho y he comprobado y no llega a entrar en el 'if($action=='grabadata')'
He probado a hacerlo sin la condición y si que funciona, el problema es que necesito dicha condición porque no quiero que grabe datos todas las veces...