It could be a few things. First, how long have you left it in to charge? I ask because if it was completely drained dry you would need to leave it charging way longer than you usually do. The batteries are not really meant to be drained completely.
Second, when you do charge it, try it with the phone turned off. See if will charge that way. If yes, then there are other issues.
So Third, check if there are any stuck buttons or stuff stuck in with the buttons (food, lint, dust, etc.). If so, this can cause the drain, even at the same time as charging, when the phone is on it still flashes, I would ask if you installed anything new, or updated anything, just before the problem started? To check that you would want to turn the phone...