This is something that you need to see a doctor about. There is a condition where the hormone that signals the body to stop the period doesn't come. So it takes a shot (or used to they may have something else now) to stop it. At any rate a period this long needs to be looked into.