I had the same problem and it was driving me crazy. I tried a hard reset etc but nothing solved the problem.
Turns out that it was the battery. Take the battery out of your phone and lie it flat on a table. If you can make the battery spin by nudging a corner, then the battery is faulty. Signs...